KR100224686B1 - Method for storing mpeg decoded image data - Google Patents
Method for storing mpeg decoded image data Download PDFInfo
- Publication number
- KR100224686B1 KR100224686B1 KR1019970002883A KR19970002883A KR100224686B1 KR 100224686 B1 KR100224686 B1 KR 100224686B1 KR 1019970002883 A KR1019970002883 A KR 1019970002883A KR 19970002883 A KR19970002883 A KR 19970002883A KR 100224686 B1 KR100224686 B1 KR 100224686B1
- Authority
- KR
- South Korea
- Prior art keywords
- pixels
- range
- difference
- bit
- image data
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
엠펙 복원된 영상 데이타의 저장방법이 개시된다. 다수의 수평 화소들로 이루어진 엠펙 복원된 영상 데이타의 저장방법은, 수평 화소들을 N(여기서, N은 2이상의 자연수)개의 화소들로 이루어진 화소군으로 분할하는 초기단계, 화소군의 각각의 인접한 화소들간의 차를 순차적으로 계산하여 N-1개의 차를 얻는 계산단계, N-1개의 차의 레벨에 상응하여 각각 연산된 N-1개의 화소들을 얻는 연산단계, 연산된 N-1개의 화소들이 소정 범위내에 있으면, 화소군의 N개의 화소들중 제1화소, 연산된 N-1개의 화소들 및 N-1개의 화소들의 특성을 나타내는 비트들을 순차적으로 조합하는 조합단계 및 조합단계로부터의 결과를 엠펙 복원된 영상 데이타의 압축 데이타로서 저장하는 저장단계를 구비하는 것을 특징으로 하며, 인접한 화소들간의 유사성을 이용하여 화소를 압축하여 저장하므로 메모리 크기를 감소시키고, 비용을 절감하는 효과가 있다.Disclosed is a method of storing MPEG restored image data. A method of storing MPEG-reconstructed image data consisting of a plurality of horizontal pixels comprises: an initial step of dividing horizontal pixels into a pixel group consisting of N (where N is a natural number of two or more) pixels, each adjacent pixel of the pixel group A calculation step of sequentially calculating the differences between the two to obtain N-1 differences, an operation step of obtaining N-1 pixels computed corresponding to the levels of the N-1 differences, and the calculated N-1 pixels If it is within the range, the result from the combining step and the combining step of sequentially combining the first pixels among the N pixels in the pixel group, the calculated N-1 pixels, and the characteristics of the N-1 pixels are emmpted. And storing the data as compressed data of the reconstructed image data, and compressing and storing the pixels by using similarities between adjacent pixels, thereby reducing the memory size. It has the effect of reducing the dragon.
Description
본 발명은 데이타의 저장방법에 관한 것이며, 특히 엠펙(MPEG:Motion Picture coding Experts Group) 복원된 데이타의 저장방법에 관한 것이다.The present invention relates to a method for storing data, and more particularly, to a method for storing restored MPEG (Motion Picture coding Experts Group) data.
일반적으로, 데이타를 전송할 경우에, 제한된 기억매체 용량 및 전송채널 용량을 극복하고 시간당 많은 데이타를 전송하기 위해서 전송할 데이타를 송신측에서 압축하고 압축된 데이타를 수신측에서 복원한다.In general, in the case of data transmission, in order to overcome the limited storage medium capacity and the transmission channel capacity and to transmit a large amount of data per hour, the data to be transmitted is compressed at the transmitting side and the compressed data is recovered at the receiving side.
근래에 엠펙 규격에 의한 디지탈 방식으로 영상신호를 압축 및 복원하고 있다. 엠펙 디코더는 복원과정에서 많은 데이타량을 처리하므로 외부의 메모리를 이용한다. 그러나, 엠펙 디코더를 통해 복원된 영상 데이타를 외부의 메모리에 저장할때 디코더의 특성상 인트라(I:Intra)픽쳐, 예측(P:Predictive)픽쳐 및 양방향 예측(B:Bidirectionally predictive)픽쳐를 모두 저장하고, 픽쳐당 휘도신호와 색도신호를 모두 저장하기 때문에 상당한 크기의 기억용량이 필요하다. 즉, I픽쳐, P픽쳐 및 B픽쳐를 모두 저장한다고 가정하면, 수평 화소수 720 * 수직 화소수 480 * 픽쳐수 3 * 휘도신호와 색도신호 2 * 화소당 비트수 8 = 15.82Mbits가 필요하다. 따라서, 복원된 데이타를 저장하기 위해 대용량의 메모리를 사용해야 하므로, 비용이 많이 드는 문제점이 있다.Recently, video signals are compressed and reconstructed in a digital manner based on the MPEG standard. MPEG decoder uses an external memory because it processes a large amount of data during the restoration process. However, when storing the image data reconstructed through the MPEG decoder in an external memory, the intra (I: Intra) picture, the P (Predictive) picture, and the bidirectionally predictive (B: bidirectionally predictive) picture are all stored due to the nature of the decoder. Since both the luminance signal and the chroma signal are stored per picture, a considerable amount of storage capacity is required. In other words, assuming that all I pictures, P pictures, and B pictures are stored, horizontal pixels 720 * vertical pixels 480 *
본 발명이 이루고자 하는 기술적 과제는, 인접한 화소들간의 상관관계를 이용하여 화소를 압축하여 저장하는 엠펙 복원된 영상 데이타의 저장방법을 제공하는데 있다.An object of the present invention is to provide a method for storing MPEG reconstructed image data in which pixels are compressed and stored by using correlation between adjacent pixels.
도 1의 (a) 및 도 1의 (b)는 인접한 화소들이 유사성이 있을 경우에 영상 데이타의 압축과정을 설명하기 위한 도면들이다.1A and 1B are diagrams for describing a compression process of image data when adjacent pixels have similarities.
도 2의 (a) 및 도 2의 (b)는 도 1의 압축과정을 거쳐 저장된 영상 데이타의 복원과정을 설명하기 위한 도면들이다.2 (a) and 2 (b) are diagrams for explaining a restoration process of image data stored through the compression process of FIG.
도 3의 (a) 및 도 3의 (b)는 인접한 화소들중 적어도 하나가 유사성이 없을 경우에 영상 데이타의 압축과정을 설명하기 위한 도면들이다.3A and 3B are diagrams for describing a process of compressing image data when at least one of adjacent pixels does not have similarities.
도 4는 도 3의 압축과정을 거쳐 저장된 영상 데이타의 복원과정을 설명하기 위한 도면이다.FIG. 4 is a diagram for describing a restoration process of image data stored through the compression process of FIG. 3.
도 5는 본 발명에 따른 엠펙 복원된 영상 데이타의 저장방법을 설명하기 위한 흐름도이다.5 is a flowchart illustrating a method of storing MPEG restored image data according to the present invention.
상기 과제를 이루기 위하여 본 발명에 의한 엠펙 복원된 영상 데이타의 저장방법은, 다수의 수평 화소들로 이루어진 엠펙 복원된 영상 데이타의 저장방법에 있어서, 수평 화소들을 N(여기서, N은 2이상의 자연수)개의 화소들로 이루어진 화소군으로 분할하는 초기단계, 화소군의 각각의 인접한 화소들간의 차를 순차적으로 계산하여 N-1개의 차를 얻는 계산단계, N-1개의 차의 레벨에 상응하여 각각 연산된 N-1개의 화소들을 얻는 연산단계, 연산된 N-1개의 화소들이 소정 범위내에 있으면, 화소군의 N개의 화소들중 제1화소, 연산된 N-1개의 화소들 및 N-1개의 화소들의 특성을 나타내는 비트들을 순차적으로 조합하는 조합단계 및 조합단계로부터의 결과를 엠펙 복원된 영상 데이타의 압축 데이타로서 저장하는 저장단계로 이루어지는 것이 바람직하다.In order to achieve the above object, the method for storing MPEG restored image data according to the present invention includes a method for storing MPEG restored image data including a plurality of horizontal pixels, wherein horizontal pixels are N (where N is a natural number of 2 or more). An initial step of dividing into pixel groups consisting of two pixels, a step of sequentially calculating the differences between adjacent pixels of the pixel groups to obtain N-1 differences, and respectively calculating corresponding to the levels of the N-1 differences Calculating the N-1 pixels, if the calculated N-1 pixels are within a predetermined range, the first pixel of the N pixels of the pixel group, the N-1 pixels, and the N-1 pixels It is preferable that the combination step of sequentially combining the bits indicating the characteristics of the characteristics and the storage step of storing the results from the combination step as compressed data of the MPEG-reconstructed video data.
이하, 본 발명의 엠펙 복원된 영상 데이타의 저장방법을 첨부한 도면들을 참조하여 다음과 같이 설명한다.Hereinafter, a method of storing MPEG restored image data of the present invention will be described with reference to the accompanying drawings.
엠펙 복원된 영상 데이타(이하, 간략하게 영상 데이타라 칭함)는 인접한 화소들간에 유사성을 가진다. 유사성을 가지게 되면 인접한 화소들간의 차가 소정 범위내로 축소된다. 본 발명의 영상 데이타의 저장방법은 이러한 특징을 이용한다.MPEG reconstructed image data (hereinafter, simply referred to as image data) has similarities between adjacent pixels. Having similarity reduces the difference between adjacent pixels within a predetermined range. The storage method of the image data of the present invention utilizes this feature.
도 1의 (a) 및 도 1의 (b)는 인접한 화소들이 유사성이 있을 경우에 본 발명에 의한 영상 데이타의 압축과정을 설명하기 위한 도면들로서, 도 1의 (a)는 인접한 화소들간의 차의 레벨에 따라 소정 연산을 수행하는 과정을 나타내는 도면이고, 도 1의 (b)는 압축된 화소군의 포맷을 나타내는 도면이다.1A and 1B are diagrams for explaining a compression process of image data according to the present invention when adjacent pixels have similarities, and FIG. 1A shows a difference between adjacent pixels. FIG. 1B is a diagram illustrating a process of performing a predetermined operation according to the level of FIG. 1, and FIG. 1B illustrates the format of a compressed pixel group.
영상 데이타를 외부의 메모리에 저장하기 전에 수평 방향으로 소정 화소단위로 분할하여 버퍼에 임시 저장한다. 도 1의 (a)에 도시된 포맷은 8개의 화소단위로 분할하여 얻은 화소군을 나타낸다. 여기에서, 1개의 화소는 8비트이므로, 1개의 화소군은 64비트가 되고, 8개의 화소들은 0 ~ 63의 어드레스를 가진 64비트의 버퍼에 임시 저장된다.Before storing image data in an external memory, the image data is divided into predetermined pixel units in a horizontal direction and temporarily stored in a buffer. The format shown in (a) of FIG. 1 represents a pixel group obtained by dividing into eight pixel units. Here, since one pixel is 8 bits, one pixel group becomes 64 bits, and eight pixels are temporarily stored in a 64-bit buffer having an address of 0 to 63.
도 1의 (a)에 도시된 포맷에 대해, 임시 저장된 8개의 화소들로부터 인접한 화소들간의 차를 계산하고, 차의 레벨에 따라서 소정 연산을 수행한다. 도 1의 (a)에 도시된 각 화소의 화소값은 예컨대, 인접한 화소들이 유사성이 있을 경우에 화소들간의 차가 -48이상이고 47이하인 범위로 축소된다고 보고, -48이상이고 47이하이도록 예시적으로 정한 값들이다.For the format shown in Fig. 1A, the difference between adjacent pixels is calculated from the eight temporarily stored pixels, and a predetermined operation is performed according to the level of the difference. The pixel value of each pixel shown in FIG. 1A is, for example, that when the adjacent pixels have similarity, the difference between the pixels is reduced to a range of -48 or more and 47 or less, and is -48 or more and 47 or less. These are the values.
먼저, 제1화소값으로부터 제2화소값을 감산하면, 128-125=3이다. 이와 같이, 두 값의 차가 -16 내지 15의 범위내에 있으면 차를 그대로 둔다. 다음에, 제2화소값으로부터 제3화소값을 감산하면, 125-157=-32이다. 이와 같이, 두 값의 차가 -32 내지 -17의 범위내에 있으면 16을 가산하여 125-157+16=-16으로 변형한다. 다음에, 제3화소값으로부터 제4화소값을 감산하면, 157-126=31이다. 이와 같이, 두 값의 차가 16 내지 31의 범위내에 있으면 16을 감산하여 157-126-16=15로 변형한다. 다음에, 제4화소값으로부터 제5화소값을 감산하면, 126-174=-48이다. 이와 같이, 두 값의 차가 -48 내지 -33의 범위내에 있으면 32를 가산하여 126-174+32=-16이다. 다음에, 제5화소값으로부터 제6화소값을 감산하면, 174-180=-6이다. 이때, 전술한 바와 같이 두 값의 차가 -16 내지 15의 범위내에 있으므로 차를 그대로 둔다. 다음에 제6화소값으로부터 제7화소값을 감산하면, 180-133=47이다. 이와 같이, 두 값의 차가 32 내지 47의 범위내에 있으면 32를 감산하여 180-133-32=15로 변형한다. 마지막으로, 제7화소값으로부터 제8화소값을 감산하면, 133-153=-20이다. 이때, 전술한 바와 같이 두 값의 차가 -32 내지 -17의 범위내에 있으므로 16을 가산하여 133-153+16=-4로 변형한다.First, subtracting the second pixel value from the first pixel value results in 128-125 = 3. Thus, if the difference between the two values is within the range of -16 to 15, the difference is left as it is. Next, subtracting the third pixel value from the second pixel value results in 125-157 = -32. In this way, if the difference between the two values is within the range of -32 to -17, 16 is added to be modified to 125-157 + 16 = -16. Next, subtracting the fourth pixel value from the third pixel value gives 157-126 = 31. Thus, if the difference between the two values is in the range of 16 to 31, 16 is subtracted and transformed into 157-126-16 = 15. Next, subtracting the fifth pixel value from the fourth pixel value yields 126-174 = -48. Thus, if the difference between the two values is in the range of -48 to -33, 32 is added to 126-174 + 32 = -16. Subsequently, subtracting the sixth pixel value from the fifth pixel value, 174-180 = -6. At this time, since the difference between the two values is in the range of -16 to 15 as described above, the difference is left as it is. Next, subtracting the seventh pixel value from the sixth pixel value results in 180-133 = 47. Thus, if the difference between the two values is in the range of 32 to 47, 32 is subtracted and transformed into 180-133-32 = 15. Finally, subtracting the eighth pixel value from the seventh pixel value, 133-153 = -20. At this time, since the difference between the two values is in the range of -32 to -17 as described above, 16 is added to transform 133-153 + 16 = -4.
즉, 인접한 화소들간에 유사성이 있되, 일단 인접한 화소들간의 차가 -48이상이고 47이하이면, 각각 8비트인 화소를 5비트로 줄이기 위해서, 인접한 화소들간의 차를 -16이상 15이하의 값으로 변형한다. 결국, 인접한 화소들간의 차가 -48 내지 -33이면 32를 가산하고, -32 내지 -17이면 16을 가산하고, -16 내지 15이면 변형하지 않고, 16 내지 31이면 16을 감산하고, 32 내지 47이면 32를 감산하는 연산을 수행한다.That is, similarity between adjacent pixels, but once the difference between adjacent pixels is greater than or equal to -48 and less than or equal to 47, in order to reduce the pixels having 8 bits to 5 bits, the difference between adjacent pixels is modified to a value of -16 or more and 15 or less. do. As a result, if the difference between adjacent pixels is -48 to -33, 32 is added, -32 to -17 is added 16, -16 to 15 is not modified, 16 to 31 is reduced to 16, and 32 to 47 is added. Then subtract 32.
전술한 소정 연산을 수행한 결과는 다시 56비트의 버퍼에 임시 저장된다. 처음 8비트에는 도 1의 (a)에 도시된 포맷에서의 본래의 제1화소를 저장하고, 다음 35비트에는 5비트로 압축된 7개의 화소들을 순차적으로 저장하고, 다음 13비트에는 5비트로 압축된 7개의 화소들의 특성을 순차적으로 저장한다. 여기에서 13비트중 7비트에는 5비트로 압축된 7개의 화소들의 참조비트를 순차적으로 저장하고, 다음 5비트에는 참조비트에 대한 상세한 부가비트를 순차적으로 저장하고, 마지막 1비트에는 식별비트를 저장한다.The result of performing the above-mentioned predetermined operation is temporarily stored in the 56-bit buffer again. The first 8 bits store the original first pixel in the format shown in FIG. 1A, the next 35 bits sequentially store seven pixels compressed to 5 bits, and the next 13 bits to 5 bits. The characteristics of the seven pixels are sequentially stored. Here, 7 bits of 13 bits sequentially store the reference bits of 7 pixels compressed to 5 bits, the next 5 bits sequentially store the additional bits of the reference bits, and the last 1 bits store the identification bits. .
구체적으로, 제1화소값인 128을 어드레스 0 ~ 7에 저장한다. 다음에, 변형된 제2화소값인 3을 어드레스 8 ~ 12에 저장하면서 어드레스 43에 '0'을 저장한다. 여기에서, '0'은 3이 인접한 화소들간의 차를 그대로 유지한 값임을 나타내는 참조비트이다. 다음에, 변형된 제3화소값인 -16을 어드레스 13 ~ 17에 저장하면서 어드레스 44에 '1'을 저장한다. 여기에서, '1'은 -16이 인접한 화소들간의 차로부터 변형된 값임을 나타내는 참조비트이다. 동일한 방식으로, 나머지 제4 내지 제8화소값들인 15,-16,-6,16 및 -4에 대해서도 어드레스 8 ~ 42에 5비트단위로 순차적으로 저장하면서 어드레스 45 ~ 49에 '0' 또는 '1'을 순차적으로 저장한다.Specifically, 128, the first pixel value, is stored in
또한, 어드레스 43 ~ 49에 저장된 '1'의 참조비트들의 연산 특성에 따라, 어드레스 50 ~ 54에 부가비트들을 저장한다. 즉, 인접한 화소들간의 차에 16을 가산 또는 감산한 경우이면 '0'을 부가비트로서 저장하고, 차에 32를 가산 또는 감산한 경우이면 '1'을 부가비트로서 저장한다. 마지막으로, 어드레스 55에 '1'인 식별비트를 저장하여 인접한 화소들의 유사성을 이용하여 압축을 수행하였다는 것을 나타낸다.Further, additional bits are stored in
따라서, 영상 데이타는 8개의 화소들로 이루어진 64비트의 화소군으로 분할되고, 분할된 화소군은 56비트의 화소군으로 압축되어 외부의 메모리에 저장된다.Therefore, the image data is divided into a 64-bit pixel group consisting of eight pixels, and the divided pixel group is compressed into a 56-bit pixel group and stored in an external memory.
도 2의 (a) 및 도 2의 (b)는 도 1의 압축과정을 거쳐 저장된 영상 데이타의 복원과정을 설명하기 위한 도면들로서, 도 2의 (a)는 압축된 화소들을 복원하는 과정을 나타내는 도면이고, 도 2의 (b)는 복원된 화소군의 포맷을 나타내는 도면이다.2A and 2B are diagrams for describing a restoration process of image data stored through the compression process of FIG. 1, and FIG. 2A illustrates a process of restoring compressed pixels. 2B is a diagram illustrating a format of a reconstructed pixel group.
압축과정을 거쳐 외부의 메모리에 저장된 영상 데이타를 독출할 시에는 56비트 단위로 독출하여 버퍼에 임시 저장한다. 압축된 56비트의 영상 데이타를 복원할 경우에, 먼저 56비트중 마지막 어드레스 55에 저장된 비트값을 확인한다. 어드레스 55에 저장된 비트가 '1'이라면 인접한 화소들의 유사성을 이용하여 영상 데이타를 압축하였다는 것을 나타내므로, 도 1의 (a) 및 도 1의 (b)를 참조하여 설명한 압축과정을 반대로 적용하면 된다.When reading image data stored in the external memory through the compression process, the data is read in 56 bit units and temporarily stored in the buffer. When restoring the compressed 56-bit video data, first check the bit value stored at the
도 2의 (a)에 도시된 포맷에서, 어드레스 0 ~ 7에 저장된 제1화소값인 128은 그대로 복원한다. 나머지 어드레스 8 ~ 42에 5비트단위로 저장된 제2 내지 제8화소값들은 어드레스 43 ~ 55로부터 독출한 각각의 비트들에 따라 소정 연산을 수행하여 복원한다. 상세하게, 어드레스 43 ~ 49로부터 독출한 참조비트들중 임의의 참조비트가 '0'이면 바로 전에 복원된 화소값으로부터 다음 화소값을 감산하기만 한다. 그러나, 임의의 참조비트가 '1'이면 그에 대응하는 부가비트를 어드레스 50 ~ 54로부터 더 독출한다. 독출한 부가비트가 '0'인 경우에, 바로 전에 복원된 화소값으로부터 다음 화소값을 감산한 후에 16을 가산(다음 화소값이 음수인 경우) 또는 감산(다음 화소값이 양수인 경우)한다. 한편, 독출한 부가비트가 '1'인 경우에, 바로 전에 복원된 화소값으로부터 다음 화소값을 감산한 후에 32를 가산(다음 화소값이 음수인 경우) 또는 감산(다음 화소값이 양수인 경우)한다.In the format shown in (a) of FIG. 2, 128, the first pixel value stored at
전술한 복원과정을 도 2의 (a)에 도시된 수치를 대입하여 설명하면, 먼저 제1화소값인 128을 그대로 복원한다. 다음에, 어드레스 43으로부터 독출한 참조비트 '0'에 따라 128로부터 제2화소값인 3을 감산하여 125를 복원한다. 다음에, 어드레스 44로부터 독출한 참조비트 '1' 및 어드레스 50으로부터 독출한 부가비트 '0'에 따라 125로부터 제3화소값인 -16을 감산한 후에 16을 가산하여 157을 복원한다. 다음에, 어드레스 45로부터 독출한 참조비트 '1' 및 어드레스 51로부터 독출한 부가비트 '0'에 따라 157로부터 제4화소값인 15를 감산한 후에 16을 감산하여 126을 복원한다. 다음에, 어드레스 46으로부터 독출한 참조비트 '1' 및 어드레스 52로부터 독출한 부가비트 '1'에 따라 126으로부터 제5화소값인 -16을 감산한 후에 32를 감산하여 174를 복원한다. 다음에, 어드레스 47로부터 독출한 참조비트 '0'에 따라 174로부터 제6화소값인 -6을 감산하여 180을 복원한다. 다음에, 어드레스 48로부터 독출한 참조비트 '1' 및 어드레스 53으로부터 독출한 부가비트 '1'에 따라 180으로부터 15를 감산한 후에 32를 감산하여 133을 복원한다. 다음에, 어드레스 49로부터 독출한 참조비트 '1' 및 어드레스 54로부터 독출한 부가비트 '0'에 따라 133으로부터 -4를 감산한 후에 16을 가산하여 153을 복원한다.When the above-described restoration process is described by substituting the numerical value shown in FIG. 2A, first, the
복원된 화소값들은 도 2의 (b)에 도시된 바와 같이 8비트단위로 순차적으로 복원된다. 복원된 화소값들은 도 1의 (a)에 도시된 화소군의 화소값들과 동일하다.The reconstructed pixel values are sequentially restored in units of 8 bits, as shown in FIG. The reconstructed pixel values are the same as the pixel values of the pixel group shown in FIG.
도 3의 (a) 및 도 3의 (b)는 인접한 화소들중 적어도 하나가 유사성이 없을 경우에 영상 데이타의 압축과정을 설명하기 위한 도면들로서, 도 3의 (a)는 인접한 화소들간의 차를 구하는 과정을 나타내는 도면이고, 도 3의 (b)는 압축된 화소군의 포맷을 나타내는 도면이다.3A and 3B are diagrams for explaining a process of compressing image data when at least one of adjacent pixels does not have similarities, and FIG. 3A illustrates a difference between adjacent pixels. Is a diagram illustrating a process of obtaining a C, and FIG. 3B illustrates a format of a compressed pixel group.
도 1의 (a)를 참조하여 설명한 바와 마찬가지로, 영상 데이타를 수평 방향으로 8개의 화소단위로 분할하여 임시 저장하고, 인접한 화소들간의 차를 계산한다. 도 3의 (a)는 도 1의 (a)와 비교하여 제5화소값이 다르다. 제4화소값으로부터 제5화소값을 감산하면, 126-175=-49이 되고, 이 값은 인접한 화소들간의 차가 -48이상이고 47이하인 경우의 소정 연산에 적용되지 않는다. 따라서, 8비트인 화소를 5비트로 줄이지 못한다.As described with reference to FIG. 1A, the image data is divided into eight pixel units in the horizontal direction and temporarily stored, and the difference between adjacent pixels is calculated. FIG. 3A shows a fifth pixel value different from that of FIG. 1A. Subtracting the fifth pixel value from the fourth pixel value results in 126-175 = -49, and this value is not applied to a predetermined operation when the difference between adjacent pixels is -48 or more and 47 or less. Therefore, it is not possible to reduce an 8-bit pixel to 5 bits.
결국, 인접한 화소들간의 차들중 적어도 한 값이 -48보다 작거나 47보다 크면, 즉 인접한 화소들간에 유사성이 없으면, 인접한 화소들의 유사성을 이용하여 압축하지 못한다. 인접한 화소들간에 유사성이 없을 경우에는, 도 3의 (b)에 도시된 바와 같이 간단하게 각각의 화소값들을 2로 제산하여 제산된 결과를 순차적으로 저장하고, 별도의 참조비트들 및 부가비트들을 저장하지 않는다.As a result, if at least one of the differences between adjacent pixels is less than -48 or greater than 47, i.e., if there is no similarity between adjacent pixels, it cannot be compressed using the similarity of adjacent pixels. If there is no similarity between adjacent pixels, as shown in FIG. 3 (b), simply divide each pixel value by 2 to sequentially store the divided result, and separate reference bits and additional bits. Do not save.
여기에서, 제산된 결과들은 모두 7비트로 저장할 수 있다. 단, 2로 제산하여 압축하였다는 것을 나타내기 위해서, 어드레스 55에 저장되는 마지막 비트는 임의로 '0'이 되도록 한다. 도 3의 (a)에서 마지막 화소값인 154를 2로 제산한 값은 실제로 77이지만, 도 3의 (b)에 상세히 도시된 바와 같이 최하위비트를 임의로 '0'으로 대체하여 76을 저장한다.Here, all the divided results can be stored in 7 bits. However, in order to indicate that the division is performed by dividing by 2, the last bit stored at
따라서, 인접한 화소들의 유사성을 이용하지 않고 압축하더라도, 8개의 화소들로 이루어진 64비트의 화소군을 56비트의 화소군으로 압축하여 저장한다.Therefore, even if compression is performed without using the similarity between adjacent pixels, a 64-bit pixel group consisting of eight pixels is compressed and stored into a 56-bit pixel group.
또한, 도 1의 (a) 및 도 1의 (b)의 압축과정에서, 8개의 화소단위로 이루어진 화소군에서 모든 인접한 화소들간의 차가 -48이상이고 47이하이더라도, 64비트의 화소군을 56비트의 화소군으로 압축하지 못하는 경우에는 2로 제산하여 압축한다. 즉, 식별비트를 제외하고, 본래의 제1화소가 차지하는 8비트와, 압축된 화소들이 차지하는 35비트와, 참조비트들이 차지하는 7비트와, 부가비트들이 차지하는 5비트의 합이 55비트를 초과하게 되면, 인접한 화소들의 유사성을 이용한 압축을 중단하고 다시 2로 제산하여 압축한다.In addition, in the compression process of FIGS. 1A and 1B, even if the difference between all adjacent pixels in the pixel group consisting of eight pixel units is -48 or more and 47 or less, the 64-bit pixel group is 56. If it is not possible to compress the pixel group of bits, it divides by 2 and compresses it. That is, except for the identification bit, the sum of 8 bits occupied by the original first pixel, 35 bits occupied by the compressed pixels, 7 bits occupied by the reference bits, and 5 bits occupied by the additional bits exceeds 55 bits. Then, the compression is stopped using the similarity of adjacent pixels, and the division is again divided by 2 to compress.
도 4는 도 3의 압축과정을 거쳐 저장된 영상 데이타의 복원과정을 설명하기 위한 도면이다. 압축된 데이타를 복원할 경우에, 56비트중 마지막 어드레스 55에 저장된 비트값을 확인한다. 어드레스 55에 저장된 비트가 '0'이라면 영상 데이타를 2로 제산하여 압축하였다는 것을 나타낸다.FIG. 4 is a diagram for describing a restoration process of image data stored through the compression process of FIG. 3. When restoring the compressed data, check the bit value stored at the
도 3의 (b)에 도시된 56비트로 압축된 화소군의 각각의 화소들을 2배 승산하면 도 4에 도시된 바와 같이 복원된 화소군을 얻는다. 이때, 영상 데이타를 2로 제산하여 압축한 후에 다시 복원한 데이타는 압축전의 영상 데이타와 1 또는 2비트정도의 차이가 있지만, 이러한 에러는 복원한 데이타를 이용하는데 거의 영향을 미치지 않는다. 실제로, 영상 데이타는 인접한 화소들간에 많은 유사성을 가지므로 각각의 화소들을 2로 제산하여 압축할 확률은 매우 낮다.Multiplying each pixel of the pixel group compressed by 56 bits shown in FIG. 3B yields a reconstructed pixel group as shown in FIG. In this case, the data reconstructed after dividing the image data by 2 and compressing again differs by about 1 or 2 bits from the image data before compression, but such an error has little effect on using the reconstructed data. In practice, the image data has many similarities between adjacent pixels, so the probability of dividing each pixel by two is very low.
도 5는 본 발명에 따른 엠펙 복원된 영상 데이타의 저장방법을 설명하기 위한 흐름도로서, 크게 영상 데이타를 수평 방향으로 N개의 화소들로 분할하는 초기단계(제10단계), 인접한 화소들간의 차의 레벨에 따라 소정 연산을 수행하는 연산단계(제12단계 내지 제28단계), 인접한 화소들간에 유사성이 있으면 연산단계의 결과로 압축하는 제1압축단계(제30단계 및 제32단계), 인접한 화소들간에 유사성이 없거나, 제1압축단계의 결과가 소정 조건을 만족시키지 못하면, 초기단계의 N개의 화소들로 압축하는 제2압축단계(제30단계, 제34단계 및 제36단계) 및 제1 또는 제2압축단계의 결과를 저장하는 저장단계(제42,44 및 46단계)로 이루어진다.5 is a flowchart illustrating a method for storing MPEG restored image data according to an embodiment of the present invention, wherein an initial step (step 10) of dividing image data into N pixels in a horizontal direction is performed. An operation step (
구체적으로 설명하면, 먼저, 엠펙 복원된 영상 데이타를 수평 방향으로 N개의 화소들로 분할하여 초기의 화소군을 구성한다(제10단계). 전술한 도 1의 (a)을 예로 들면, N은 8이다.Specifically, first, the MPEG-reconstructed image data is divided into N pixels in the horizontal direction to form an initial pixel group (step 10). Taking (a) of FIG. 1 described above as an example, N is 8.
제10단계후에, 초기의 화소군에서 인접한 화소들간의 차를 순차적으로 계산한다(제12단계). 제12단계후에, 차의 레벨에 따라 소정 연산을 수행하는데, 먼저, 차가 제1범위내에 있는가 판단한다(제14단계). 제14단계후에, 차가 제1범위내에 있으면 차를 그대로 유지하고(제20단계), 그렇지않으면 차가 제2범위내에 있는가 판단한다(제16단계). 예컨대, 8비트의 화소를 5비트의 화소로 줄이고자 한다면, 제1범위는 -16 내지 15가 되고, 이에 따라 각각 8비트인 화소들간의 차가 제1범위내에 있으면 차를 5비트로 나타낼 수 있다. 제16단계후에, 차가 제2범위내에 있으면 차에 제1소정수를 가산/감산하고(제22단계), 그렇지않으면 차가 제3범위내에 있는가 판단한다(제18단계). 예컨대, 제2범위는 -48 내지 -33이거나 32 내지 47이고, 제1소정수는 32이며, 제2범위에 있는 차로부터 제1소정수를 가산/감산함으로써 차를 5비트로 나타낼 수 있다. 제18단계후에, 차가 제3범위내에 있으면 차에 제2소정수를 가산/감산하고(제24단계), 그렇지않으면 차를 그대로 유지한다(제20단계). 예컨대, 제3범위는 -32 내지 -17이거나 16 내지 31이고, 제2소정수는 16이며, 제3범위에 있는 차로부터 제1소정수를 가산/감산함으로써 차를 5비트로 나타낼 수 있다.After the tenth step, the difference between adjacent pixels in the initial pixel group is sequentially calculated (step 12). After the twelfth step, a predetermined operation is performed according to the level of the difference. First, it is determined whether the difference is within the first range (step 14). After
제20단계 내지 제24단계중 어느 한 단계후에, 차가 N-1번째 차인가 판단한다(제26단계). 즉, 초기의 N개의 화소들로부터 인접한 화소들간의 차를 순차적으로 계산하여 N-1개의 차를 얻었는가 확인한다. 만일 N-1번째의 차가 아니라면, 제12단계로 복귀하여 제12단계 내지 제24단계를 재수행한다. 그렇지 않으면, N-1개의 차의 레벨에 따라 각각 연산된 N-1개의 화소들을 얻는다(제28단계).After any one of
제28단계후에, N-1개의 차의 레벨에 따라 각각 연산된 N-1개의 화소들중 적어도 하나가 제1범위를 벗어나는가 판단한다(제30단계). 만일 초기의 N개의 화소들이 인접한 화소들간에 유사성을 가진다면, N-1개의 차의 레벨에 따라 각각 연산된 N-1개의 화소들을 각각 5비트로 나타낼 수 있다. 제30단계에서, 연산된 N-1개의 화소들중 적어도 하나가 제1범위를 벗어나면, 초기의 화소군을 구성했던 N개의 화소들을 각각 2로 제산하고(제36단계), 제산된 결과를 영상 데이타의 압축 데이타로서 저장한다(제38단계).After
제30단계에서, 연산된 N-1개의 화소들을 모두 5비트로 나타낼 수 있으면, 초기의 N개의 화소들중 제1화소, 연산된 N-1개의 화소들 및 N-1개의 화소들의 특성을 나타내는 참조비트부를 조합한다(제32단계). 제32단계후에, 조합된 총 비트가 소정 비트를 초과하는가 판단한다(제34단계). 만일 조합된 총 비트가 소정 비트이면 조합된 결과를 영상 데이타의 압축 데이타로서 저장한다(제38단계). 그렇지않으면, 초기의 화소군을 구성했던 N개의 화소들을 각각 2로 제산하고(제36단계), 제산된 결과를 영상 데이타의 압축 데이타로서 저장한다(제38단계). 즉, 연산된 N-1개의 화소들을 모두 5비트로 나타낼 수 있더라도 참조비트부를 포함한 전체 비트가 소정 비트를 초과하면, 연산된 N-1개의 화소들을 이용하여 압축 저장하지 않는다.In
전술한 본 발명의 엠펙 복원된 영상 데이타의 저장방법은 영상 데이타를 전체적으로 약 2 메가비트를 줄인다. 종래와 같이 I픽쳐, P픽쳐 및 B픽쳐를 모두 저장한다면 수평 화소수 720 * 수직 화소수 480 * 픽쳐수 3 * 휘도신호와 색도신호 2 * 화소당 비트수 8 = 15.82 메가비트의 기억용량이 필요하다. 그러나, 본 발명의 엠펙 복원된 영상 데이타의 저장방법을 이용하면, 수평방향으로 8개의 화소단위당 1개의 화소만큼의 기억용량을 절약할 수 있으므로, 전체 수평 화소수 720에서 90개의 화소만큼의 기억용량을 절약할 수 있다. 즉, 90 * 480 * 3 * 2 * 8 = 2,073,600 비트 = 1.977 메가비트 ≒ 2 메가비트만큼의 기억용량을 절약할 수 있다.The above-described method for storing MPEG reconstructed image data of the present invention reduces image data by approximately 2 megabits. Conventionally, if I, P, and B pictures are all stored, horizontal pixels 720 * vertical pixels 480 *
이상에서 설명한 바와 같이, 본 발명에 의한 엠펙 복원된 영상 데이타의 저장방법은, 인접한 화소들간의 유사성을 이용하여 화소를 압축하여 저장하므로 메모리 크기를 감소시키고, 비용을 절감하는 효과가 있다.As described above, the method for storing MPEG reconstructed image data according to the present invention has the effect of reducing the memory size and reducing the cost since the pixels are compressed and stored using the similarity between adjacent pixels.
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970002883A KR100224686B1 (en) | 1997-01-30 | 1997-01-30 | Method for storing mpeg decoded image data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970002883A KR100224686B1 (en) | 1997-01-30 | 1997-01-30 | Method for storing mpeg decoded image data |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980067038A KR19980067038A (en) | 1998-10-15 |
KR100224686B1 true KR100224686B1 (en) | 1999-10-15 |
Family
ID=19496030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970002883A KR100224686B1 (en) | 1997-01-30 | 1997-01-30 | Method for storing mpeg decoded image data |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100224686B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101307406B1 (en) * | 2011-08-05 | 2013-09-11 | 한양대학교 산학협력단 | Encoding/decoding apparatus with reference frame compression |
-
1997
- 1997-01-30 KR KR1019970002883A patent/KR100224686B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19980067038A (en) | 1998-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5442400A (en) | Error concealment apparatus for MPEG-like video data | |
US4725885A (en) | Adaptive graylevel image compression system | |
US6639945B2 (en) | Method and apparatus for implementing motion detection in video compression | |
US5838597A (en) | MPEG-2 decoding with a reduced RAM requisite by ADPCM recompression before storing MPEG-2 decompressed data | |
KR100261072B1 (en) | Digital signal processing system | |
US5552831A (en) | Digital video signal decoding apparatus and presumed motion vector calculating method | |
US6157741A (en) | Image processing apparatus and image processing method | |
US7627036B2 (en) | Motion vector detection device and moving picture camera | |
WO1996033575A1 (en) | Video decoder using block oriented data structures | |
KR20000068192A (en) | Image processing device and method, and transmission medium, transmission method and image format | |
EP0733294B1 (en) | Video processing method | |
US5736944A (en) | Image decoding apparatus | |
GB2321154A (en) | Reverse playback of MPEG video | |
JPH07503343A (en) | Device for concealing errors in digital video processing systems | |
US5991445A (en) | Image processing apparatus | |
US5262878A (en) | Method and apparatus for compressing digital still picture signals | |
US6229930B1 (en) | Image processing apparatus, image processing method, image data structure, and data storage media | |
US6370193B1 (en) | MPEG data compression and decompression using adjacent data value differencing | |
US6940909B2 (en) | Video decoding during I-frame decode at resolution change | |
KR100537123B1 (en) | Picture signal coding device, picture signal coding method, picture signal decoding device, picture signal decoding method, and recording medium | |
KR100224686B1 (en) | Method for storing mpeg decoded image data | |
KR20020026189A (en) | Efficient video data access using fixed ratio compression | |
KR0180164B1 (en) | A variable length decoder | |
EP1573677A1 (en) | Color image compression with adaptive prediction | |
KR100328199B1 (en) | Multi-channel image encoding system and method for operating memory blocks therein |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20070612 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |