KR20150096353A - Image encoding system, image decoding system and providing method thereof - Google Patents

Image encoding system, image decoding system and providing method thereof Download PDF

Info

Publication number
KR20150096353A
KR20150096353A KR1020150088506A KR20150088506A KR20150096353A KR 20150096353 A KR20150096353 A KR 20150096353A KR 1020150088506 A KR1020150088506 A KR 1020150088506A KR 20150088506 A KR20150088506 A KR 20150088506A KR 20150096353 A KR20150096353 A KR 20150096353A
Authority
KR
South Korea
Prior art keywords
frame
images
image
quantization table
block
Prior art date
Application number
KR1020150088506A
Other languages
Korean (ko)
Inventor
위영철
Original Assignee
주식회사 큐램
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 큐램 filed Critical 주식회사 큐램
Priority to KR1020150088506A priority Critical patent/KR20150096353A/en
Publication of KR20150096353A publication Critical patent/KR20150096353A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding

Abstract

Disclosed are an image encoding system capable of effectively compressing a series of images (for example, consecutively photographed images), and also, randomly accessing an encoded image by reducing overhead during decoding, an image decoding system, and a providing method thereof. According to one aspect of the present invention, the providing method of the encoding system for encoding a plurality of images comprises the following steps: (a) generating independent frames corresponding to first images by intra-frame-encoding the first images, which are a part of the images; and (b) generating dependent frames corresponding to second images by inter-frame-encoding the second images, which are the residual images except for the first images, where each of the dependent frames is encoded by directly referring to any one among the independent frames.

Description

이미지 인코딩 시스템, 디코딩 시스템 및 그 제공방법{Image encoding system, image decoding system and providing method thereof}TECHNICAL FIELD [0001] The present invention relates to an image encoding system, a decoding system, and an image encoding system,

본 발명은 이미지 인코딩 시스템, 이미지 디코딩 시스템 및 그 제공방법에 관한 것으로, 보다 상세하게는 일련의 이미지(예를 들면, 연속 촬영 이미지)를 효율적으로 압축할 수 있으면서도, 디코딩 시의 오버헤드를 줄여 인코딩된 이미지에 대한 임의 접근(Random Access)을 가능하게 하는 이미지 인코딩 시스템, 디코딩 시스템 및 그 제공방법에 관한 것이다.
The present invention relates to an image encoding system, an image decoding system and a method of providing the same, and more particularly, to an image encoding system, an image decoding system, To an image encoding system, a decoding system, and a method for providing the same.

최근 디지털 카메라가 발전하면서, 보다 좋은 품질의 사진을 얻기 위한 방법으로 짧은 시간에 여러 장의 사진을 연속적으로 촬영하는 기술(예를 들면, 버스트 샷)이 등장하고 있다. Recently, as a digital camera has developed, a technique (for example, a burst shot) for continuously photographing a plurality of photographs in a short time has been emerging as a method for obtaining a better quality photograph.

이처럼 일련의 연속된 사진들을 저장하는 방식은 각각의 사진들을 모두 압축저장하는 방식과 동영상 인코딩 방식으로 인코딩을 하여 저장하는 방식이 존재한다. The method of storing a series of consecutive photographs includes a method of compressing and storing all the pictures, and a method of encoding and storing the images in the moving picture encoding method.

전자의 경우는 각각의 사진들을 소정의 이미지 압축방식으로 압축하여, 서로독립된 압축 이미지 자체를 저장하므로 사용자는 연속된 복수의 사진들 중 자신이 원하는 시점에 대한 사진을 바로 억세스(access)할 수 있는 다이렉트 억세스가 가능하고, 플레이 백(play back) 즉, 촬영된 순서와는 반대방향으로 플레이를 수행하는 등 다양한 서비스가 가능한 장점이 있다. 하지만 각각의 사진들을 독립적으로 압축하여 저장하여야 하므로 많은 저장공간을 차지하게 되는 문제점이 있다.In the former case, each of the photographs is compressed by a predetermined image compression method, and the compressed image itself, which is independent of each other, is stored. Thus, the user can directly access a photograph of a desired point in time among a plurality of consecutive photographs Direct access is possible, and various services such as play back, that is, play in the direction opposite to the shooting order, can be performed. However, since each of the photographs must be compressed and stored independently, it takes a lot of storage space.

한편, 연속된 일련의 사진들을 동영상 인코딩(예컨대, H.264 MPEG 등) 을 하여 저장하는 방식은 각각의 사진들의 이미지 자체를 저장하는 것이 아니라, 일부의 사진(또는 이미지)에 해당하는 프레임(예컨대, P프레임, B프레임 등)은 이전 사진(또는 이미지)와 차이가 있는 정보들만 제한적으로 저장하게 되므로 전술한 방식에 비해 훨씬 저장되는 정보의 양을 줄일 수 있는 장점이 있다. 하지만, 동영상 인코딩으로 연속된 일련의 사진들을 저장하는 경우에는 전술한 바와 같은 다이렉트 억세스 또는 플레이 백과 같은 서비스가 수행되기 어렵다는 문제점이 있다. 왜냐하면 동영상 인코딩에서는 사용자로부터 선택되거나 플레이 백을 위한 임의의 프레임을 디코딩하기 위해서는 상기 임의의 프레임이 참조하는 프레임들을 순차적으로 디코딩한 후, 최종적으로 상기 임의의 프레임을 디코딩할 수 있는 경우가 빈번하기 때문이다. 또한, 몇 번의 참조 및 디코딩을 거쳐야 상기 임의의 프레임을 디코딩할 수 있을지도 미리 알 수 없기 때문에, 다이렉트 억세스 또는 플레이 백을 위해서는 실질적으로 많은 연산 및 시간이 소요되는 문제점이 있다.On the other hand, a method of storing successive series of photographs by moving picture encoding (for example, H.264 MPEG, etc.) does not store the image itself of each photograph, but stores a frame corresponding to a part of photographs , P frame, B frame, and the like) has a merit that the amount of stored information can be reduced compared to the above-mentioned method because only limited information is stored in the previous picture (or image). However, in the case of storing a series of consecutive pictures in a video encoding, there is a problem that services such as direct access or playback as described above are difficult to perform. This is because, in the video encoding, in order to decode an arbitrary frame selected by the user or for playback, it is often possible to decode the frames sequentially referred to by the arbitrary frame and finally decode the arbitrary frame to be. Further, since it is not known in advance how many frames of reference and decoding should be decoded in order to decode the arbitrary frame, there is a problem that substantial computation and time are required for direct access or playback.

예컨대, 동영상 인코딩(압축) 기술을 보다 구체적으로 살펴보면, MPEG(Moving Picture Experts Group)이나 H.264 등이 널리 공지되어 있다. 이들 동영상 인코딩 기술에서는 동영상의 이미지 프레임들에서 공간(spatial) 및 시간(temporal)상의 중복을 탐색하여 동영상의 사이즈를 줄일 수 있다.For example, Moving Picture Experts Group (MPEG) and H.264 are widely known as moving picture encoding (compression) techniques. In these moving picture encoding techniques, it is possible to reduce the size of a moving picture by searching spatial and temporal overlaps in image frames of moving pictures.

MPEG 코딩 기술을 비롯한, 각종 동영상 인코딩 기술에서는 각 프레임을 I 프레임(Intra Frame), P 프레임(Predicted Frame) 혹은 B 프레임(Bidirectional Frame) 중 어느 하나로 인코딩할 수 있다.In various video encoding technologies including MPEG coding technology, each frame can be encoded into any one of an I frame (Intra Frame), a P frame (Predicted Frame), and a B frame (Bidirectional Frame).

I 프레임은 JPEG과 같은 방식으로 소스 이미지로부터 직접 압축되는 프레임으로서, 다른 프레임을 참조하지 않으며 독립적으로 인코딩된다. 따라서, 다른 프레임들의 참조 없이 디코딩될 수 있으며, 동영상 데이터에 대한 임의 접근 또는 다이렉트 억세스(Random Access or direct access)를 위해 사용될 수 있다. 하지만, 이미지 전체에 대한 모든 데이터를 가지고 있으므로 P 프레임이나 B 프레임에 비해 용량이 크고 디코딩에 많은 시간이 소요될 수 있다. 한편, I 프레임의 경우, 해당 프레임 내의 개별적인 매크로 블록의 공간적 중복(spatial redundancy)를 이용하는 인트라프레임 인코딩(Intra-Frame Encoding)이 적용될 수 있다. 여기서, 인트라프레임 인코딩은 프레임 시퀀스 내의 다른 프레임을 참조하지 않고, 인코딩 대상이 되는 프레임 내의 정보간의 공간적 상관성에만 기반하여 수행되는 다양한 손실/비손실 압축 방식을 의미할 수 있다. 따라서, 인트라프레임 인코딩된 프레임은 자신의 데이터만으로 원래 이미지를 복원할 수 있다. 인트라 프레임 인코딩 기술은 대표적으로 JPEG(Joint Photographic Experts Group) 압축 기술을 들 수 있으며, 이에 대하여는 이후에 더욱 상세하게 설명하기로 한다.An I frame is a frame that is compressed directly from the source image in the same way as JPEG, and does not refer to other frames and is independently encoded. Thus, it can be decoded without reference to other frames, and can be used for random access or direct access to moving picture data. However, since it has all the data for the entire image, it has a larger capacity and can take a longer time to decode than the P frame or the B frame. On the other hand, in the case of an I frame, Intra-Frame Encoding using spatial redundancy of individual macroblocks in the frame may be applied. Herein, the intra frame encoding may refer to various loss / lossless compression schemes performed based only on the spatial correlation between information in a frame to be encoded, without referring to other frames in the frame sequence. Therefore, the intra frame encoded frame can restore the original image with only its own data. The intra frame encoding technique is typically a JPEG (Joint Photographic Experts Group) compression technique, which will be described in detail later.

P 프레임은 직전에 위치하는 프레임 예컨대, I 프레임 또는 P 프레임(참조 프레임)에 포함된 정보를 참조하여 예측 인코딩되는 프레임이다. 연속되는 이미지들의 경우, 이미지 전체가 바뀌는 것이 아니라 이미지 블록들이 옆으로 조금씩 이동한다는 점(즉, 움직임이 있는 경우, 앞 프레임에 있는 물체 자체의 모양에는 큰 변화가 없이 프레임 내의 특정 영역이 옆으로 이동하는 경우가 대부분이라는 점)에 착안하여, 프레임 간의 차이 값을 이용하여 예측 부호화하는 것이다. 따라서, P 프레임의 경우에는 상술한 인트라프레임 인코딩 외에도, 이전에 주변 프레임과의 시간적 중복(temporal redundancy)을 이용하는 인터프레임 인코딩(Inter-Frame Encoding)이 함께 적용될 수 있다. 따라서, P 프레임의 경우, 참조 프레임에 포함된 정보를 함께 이용하여야만 디코딩될 수 있다.The P frame is a frame that is predictively encoded referring to information included in the immediately preceding frame, for example, an I frame or a P frame (reference frame). In the case of consecutive images, the entire image does not change but the image blocks move slightly (that is, when there is motion, a certain area within the frame moves sideways with little change in the shape of the object itself in the previous frame , And the predictive encoding is performed using the difference value between the frames. Therefore, in the case of the P frame, in addition to the intra frame encoding described above, inter-frame encoding using temporal redundancy with neighboring frames may be applied together. Therefore, in the case of the P frame, it can be decoded only by using the information included in the reference frame together.

B 프레임 역시 주변 프레임을 참조하여 예측 인코딩되는 프레임로서, 특히 직전 및 직후에 위치하는 I 프레임/P 프레임 정보를 모두 이용하여 인코딩되는 프레임이다.The B frame is also a frame that is predictively encoded with reference to a neighboring frame, in particular, a frame that is encoded using both I frame / P frame information located immediately before and after.

도 1은 종래의 동영상 인코딩 기술에 의해 인코딩된 각 프레임간의 참조관계를 나타내는 도면이다. 도 1은 모두 14개의 프레임 중 1번, 6번, 14번 프레임이 I 프레임이고, 나머지 프레임인 모두 P 프레임인 경우를 예시하고 있다.1 is a diagram showing a reference relationship between frames encoded by a conventional moving picture encoding technique. FIG. 1 illustrates a case where the first frame, the sixth frame, and the 14th frame among the 14 frames are I frames and all the remaining frames are P frames.

도 1을 참조하면, 모든 I 프레임(I1, I6, I14)는 인트라프레임 인코딩된 독립적인 프레임이므로, 어떠한 다른 프레임도 참조하지 않는다. 각각의 P 프레임은 바로 이전의 I 프레임 또는 P 프레임을 참조하여 인터프레임 인코딩된 프레임이다. 예를 들어, 3번 프레임(P3)은 바로 이전에 위치한 선행 P 프레임인 2번 프레임(P2)를 참조하며, 10번 프레임(P10)은 바로 이전에 위치한 선행 I 프레임인 9번 프레임(I9)를 참조할 수 있다.Referring to FIG. 1, since all of the I frames I 1 , I 6 , and I 14 are independent frames that are intra frame encoded, no other frames are referred to. Each P frame is an interframe encoded frame with reference to the immediately preceding I frame or P frame. For example, the third frame P 3 refers to the second frame P 2 , which is a preceding P frame positioned immediately before the frame P 10, and the frame 10, which is the previous P frame, I can see I 9).

한편, 도 1에 도시된 바와 같은 종래의 프레임 참조 구조에서, P 프레임이 디코딩되기 위해서는 가장 가까운 선행 I 프레임까지 모두 디코딩을 하여야 한다. 예를 들어, 5번째 프레임(P5)을 디코딩하기 위해서는 참조 프레임인 4번째 프레임(P4)을 먼저 디코딩해야 하며, 이를 위해서는 4번째 프레임(P4)의 참조 프레임인 3번째 프레임(P3)이 디코딩 되어야 한다. 따라서, 결국 5번째 프레임(P5)를 디코딩하기 위해서는 P5와 가장 가까운 I 프레임인 1번 프레임(I1)부터 P5까지 차례로 디코딩되어야 한다.Meanwhile, in the conventional frame reference structure as shown in FIG. 1, in order to decode a P frame, it is necessary to decode all frames up to the nearest preceding I frame. For example, to decode the fifth frame P5, the fourth frame P4, which is a reference frame, must be decoded first. To do this, the third frame P3, which is the reference frame of the fourth frame P4, do. Therefore, in order to decode the fifth frame P5, it is necessary to sequentially decode from the first frame I1 to P5, which is the I frame closest to P5.

일반적인 동영상의 경우에는 각 프레임이 순차적으로 디스플레이되므로 이러한 디코딩 방식이 아무런 문제가 없지만, 임의의 P 프레임에 직접 접근하고자 하는 경우(즉, 임의 접근의 경우) 또는 플레이 백(즉, 영상을 역순으로 플레이)하기에는 해당 P 프레임으로부터 가장 가까운 거리에 있는 선행 I 프레임부터 해당 P 프레임까지 모두 디코딩해야 하므로 디코딩 오버헤드가 매우 클 수 있다는 문제가 있다.In the case of a general moving picture, since each frame is sequentially displayed, there is no problem in such a decoding method. However, in the case of directly accessing an arbitrary P frame (in the case of random access) or playback ), There is a problem that the decoding overhead may be very large since all of the preceding I frame to the P frame that is the closest distance from the corresponding P frame must be decoded.

따라서 연속 촬영된 일련의 이미지(예를 들면, 버스트 샷)를 상술한 바와 같은 종래의 동영상 인코딩 방식으로 저장하는 경우에는 마찬가지로 랜덤 억세스 또는 플레이 백 등의 서비스가 적용되기 어려운 문제점이 있다.Accordingly, when a series of continuously captured images (for example, a burst shot) is stored by the conventional moving picture encoding method as described above, it is difficult to apply services such as random access or playback.

그러므로 임의의 이미지에 임의 접근 시 오버헤드를 줄일 수 있으면서도 효율적으로 각 이미지를 압축할 수 있는 인코딩 방법이 요구된다.Therefore, there is a need for an encoding method capable of efficiently compressing each image while reducing overhead in random access to an arbitrary image.

한편, 상술한 바와 같이, I 프레임과 같은 다른 프레임을 참조하지 않은 독립된 프레임은 해당 프레임을 구성하는 모든 데이터를 포함하고 있으므로 용량이 클 수 있다. 따라서, 독립된 프레임을 더욱 효율적으로 압축할 수 있는 방안이 더 강구되어야 한다.On the other hand, as described above, since an independent frame that does not refer to another frame such as an I frame includes all the data constituting the frame, the capacity may be large. Therefore, a more efficient way to compress independent frames must be considered.

단일 이미지를 압축하는 종래의 다양한 방식이 널리 공지되어 있다. 그 중에서 가장 널리 쓰이고 있는 JPEG은 이미지를 압축하여 표현하는 표준으로 널리 이용되고 있다.Various conventional methods for compressing a single image are well known. JPEG, which is the most widely used, is widely used as a standard for compressing and displaying an image.

본 발명의 기술적 사상은 모든 형태의 데이터 압축 방식에 적용될 수 있지만, 설명의 편의를 위해 대표적으로 JPEG에 적용되는 경우를 일 예로 설명하기로 한다.Although the technical idea of the present invention can be applied to all types of data compression schemes, for the sake of convenience of description, a case where JPEG is applied will be described as an example.

도 2는 종래의 JPEG 이미지의 생성방법을 개략적으로 설명하기 위한 도면이다.2 is a schematic view for explaining a conventional method of generating a JPEG image.

도 2를 참조하면, JPEG은 원본 이미지를 압축하여 저장하는 방식인데, 원본 이미지를 DCT(Discrete Cosine Transform)을 수행하여 주파수 공간의 데이터로 변환하고(S10), 변환된 데이터를 양자화 테이블(예컨대, 표준 양자화 테이블)을 이용하여 양자화(Quantization)을 수행함으로써(S11) 손실 압축(lossy compression)을 수행하게 된다(S11). 그리고 손실 압축된 데이터를 인코딩(encoding)을 수행함으로써(S12), 압축된 이미지 데이터를 생성할 수 있다.Referring to FIG. 2, JPEG is a method of compressing and storing an original image. The original image is transformed into frequency space data by performing DCT (Discrete Cosine Transform), and the transformed data is transformed into a quantization table Quantization is performed using a standard quantization table (S11) to perform lossy compression (S11). Then, by performing encoding of the lossy compressed data (S12), compressed image data can be generated.

이와 같이 JPEG과 같은 손실 압축을 수행하는 경우, 정보의 손실은 대부분이 양자화 과정에서 수행되게 된다. 따라서, 이미지 압축률은 얼마만큼의 스케일(scale)로 양자화를 수행하는지에 주도적으로 의존하게 되는 방식이다.In this way, when lossy compression such as JPEG is performed, the loss of information is mostly performed in the quantization process. Therefore, the image compression rate is a method that depends heavily on how much quantization is performed on the scale.

하지만, 이미지 압축은 사용자의 가시적 화질이 크게 저하되지 않는 범위에서 수행되는 것이 바람직하다. 예컨대, 이미지 압축률을 크게 하는 경우(즉, 양자화 스케일을 크게 하는 경우)에는 압축된 이미지의 데이터 크기가 적어진다는 효과는 있지만, 가시적으로 크게 화질이 떨어질 수 있는 문제점이 있다. 또한, 이미지 압축률을 적게 하는 경우에는 화질의 저하는 크지 않지만, 데이터의 압축 정도가 미미하다는 문제점이 있다. However, it is desirable that the image compression is performed within a range in which the visual quality of the user is not significantly deteriorated. For example, when the image compression ratio is increased (that is, when the quantization scale is increased), the data size of the compressed image is reduced. However, there is a problem that the image quality deteriorates visually. In addition, when the image compression rate is reduced, there is a problem that the image quality is not deteriorated to a great extent, but the data compression degree is insignificant.

따라서, 가시적 화질을 유사화질(즉, 원본 대비 가시적 화질이 육안으로 구분하기 어려운 정도의 화질)의 범위 내로 유지하면서 최대한 압축률을 높일 수 있도록 하기 위한 방법 즉, 화질 대비 압축률을 최적화하는 방법에 대한 연구가 활발히 수행되고 있다.Therefore, a method for maximizing the compression rate while maintaining the visible quality within the range of the similar quality (i.e., the image quality with a degree that the visible quality with respect to the original is difficult to distinguish from the original), i.e., a method of optimizing the compression ratio Is being actively carried out.

이와 관련된 종래의 방법은 주로 반복적인(iterative) 압축을 수행함으로써 최적화 압축률을 탐색하는 방식(예컨대, JPEG Mini)을 이용하고 있다. 도 3은 이러한 일 예를 나타낸다.Conventional methods related thereto use a method of searching an optimized compression ratio (for example, JPEG Mini) mainly by performing iterative compression. Fig. 3 shows this example.

도 3을 참조하면, 종래의 방식은 주파수 영역으로 변환된 이미지를 소정의 양자화 스케일로 양자화 즉, 블록별 DCT 계수 조정을 수행하는 스텝(S20), 화질 저하가 발생하였는지를 판단하는 스텝(S21), 화질저하가 없다면 다시 양자화 스케일로 블록별 DCT 계수 조정을 수행하는 스텝을 반복적으로 수행하고 있다(S20). 화질 저하가 발생하였는지는 이른바 아티팩트(Artifact) 즉, 유사화질을 벗어나도록 하는 인공적 영상이 발생하였는지를 검사하는 방식이 사용될 수 있다. 이러한 방식에서는 특정 스텝에서 소정의 스케일로 양자화를 수행한 후, 양자화 수행 전 이미지와 수행 후의 이미지 간에 아티팩트가 발생하지 않으면 양자화 스케일을 증가시킨 후 다시 양자화를 수행하는 방식을 사용하거나 또는 양자화가 수행된 블록별 DCT 계수의 값을 소정의 값만큼 줄여본 후 아티팩트가 발생하는지를 판단하는 방식이 이용될 수 있다. 이와 같은 방식으로 반복적인 압축(양자화 스케일의 증가 또는 양자화된 DCT 계수의 조정)을 통해 아티팩트가 발생하면, 이전 스텝까지의 압축된 정보를 인코딩함으로써 압축을 완료할 수 있다(S23).Referring to FIG. 3, the conventional method includes quantization of an image transformed into a frequency domain using a predetermined quantization scale, that is, adjustment of a DCT coefficient for each block (step S20), step S21 for determining whether image quality degradation has occurred, If there is no deterioration in image quality, the DCT coefficient adjustment for each block is performed again on the quantization scale (S20). Whether or not image quality deterioration has occurred can be used as a method for checking whether an artifact occurs, that is, an artifact that causes the image quality to deviate from the similar image quality. In this method, after quantization is performed at a predetermined scale in a specific step, if artifacts do not occur between the image before and after the quantization, the quantization scale is increased and then the quantization is performed again. Alternatively, A method of determining whether artifacts are generated after reducing the value of each block DCT coefficient by a predetermined value can be used. When artifacts occur through repetitive compression (adjustment of the quantization scale or adjustment of the quantized DCT coefficients) in this manner, compression can be completed by encoding the compressed information up to the previous step (S23).

하지만, 이러한 종래의 압축방식은 압축할 이미지가 복잡하여 손실이 커도 상대적으로 가시적 화질 저하가 적은 이미지인지 또는 이미지가 단순하여 손실이 적어도 상대적으로 가시적 화질 저하가 큰 이미지인지 여부를 고려하지 않고 양자화가 수행되므로 비효율적인 방식일 수 있다. 또한, 일단 압축을 해본 후 다시 압축을 할지 압축을 그만 수행할지를 반복적으로 수행하므로 압축속도가 느릴 수밖에 없다.However, in the conventional compression method, quantization is performed without taking into consideration whether the image to be compressed is complicated and the loss is relatively small, or whether the image is simple and the loss is at least relatively large, It can be inefficient. Also, once compression is performed, compression or compression is repeatedly performed. Therefore, the compression speed is inevitably slow.

또한, 최종 압축결과가 최적의 압축률임을 보장할 수 없는 문제점이 있다. 왜냐하면, 마지막 양자화 스텝 수행결과 아티팩트가 발생하면 이전 양자화 스텝의 결과가 최종 압축결과가 되는데, 이전 양자화 스텝의 결과가 최적화 압축률로 압축되었음을 보장하지 못하기 때문이다.Further, there is a problem that it can not be guaranteed that the final compression result is an optimal compression rate. This is because, when artifacts are generated as a result of the last quantization step, the result of the previous quantization step becomes the final compression result, which does not guarantee that the result of the previous quantization step has been compressed to the optimum compression ratio.

이러한 문제점을 해결하기 위한 기술적 사상은 본 출원인이 출원한 한국특허출원(출원번호 10-2012-0091873, "적응 이미지 압축시스템 및 그 방법", 이하 '이전출원')에 개시된 바 있다. 이전출원의 명세서에 개시된 기술적 사상은 본 발명의 레퍼런스로 포함되며, 본 명세서의 기재에 포함되는 것으로 취급될 수 있다. The technical idea for solving such a problem is disclosed in Korean patent application (Application No. 10-2012-0091873, "Adaptive Image Compression System and Method ", hereinafter referred to as " Previous Application ") filed by the present applicant. The technical ideas disclosed in the specification of the prior application are included as a reference of the present invention and can be regarded as being included in the description of this specification.

이전출원의 기술적 사상은 종래의 공지된 이미지 압축방식과 달리 이미지의 특성에 따라 가시적 화질을 보장하는 양자화 레벨(level) 또는 스케일을 결정하여 비반복적으로 압축을 수행하는 방식일 수 있다. 즉, 이미지의 특성을 분석하여 유사화질을 유지하는 손실 허용 범위를 결정하고, 그에 따라 미리 압축에 사용될 양자화 스케일을 결정한 후 결정된 양자화 스케일에 상응하는 적응적 양자화 테이블을 생성하여 압축을 수행함으로써 한 번의 압축만으로 유사화질 범위 내에서 압축률을 높일 수 있는 방법이다.Unlike the conventional known image compression method, the technical idea of the prior application may be a method of performing compression on a non-repetitive basis by determining a quantization level or a scale for ensuring visible image quality according to characteristics of an image. That is, by analyzing characteristics of an image to determine a loss tolerance range for maintaining similar image quality, a quantization scale to be used for compression is determined in advance, an adaptive quantization table corresponding to the determined quantization scale is generated, It is a method to increase the compression rate within the range of similar image quality only by compression.

하지만, 이전출원의 기술적 사상은 압축대상 이미지에 대해 하나의 양자화 테이블(이전 출원의 적응 양자화 테이블)을 이용하여 모든 블록별로 양자화를 수행하게 되어서, 상기 압축대상 이미지에 포함된 특정 블록은 다른 블록에 비해 보다 큰 양자화 스케일로 양자화가 수행되어도 문제가 없음에도 불구하고 동일한 양자화 스케일로 압축이 수행되게 된다.However, the technical idea of the previous application is that quantization is performed for every block using one quantization table (adaptive quantization table of the previous application) for the compression target image, so that a specific block included in the compression target image is transferred to another block The compression is performed on the same quantization scale even though the quantization is performed with a larger quantization scale than with the quantization scale.

이러한 문제점은 JPEG 표준과 같이 압축대상 이미지에 대해 하나의 양자화 테이블을 이용하도록 정의된 이미지 압축 방식에 공통적으로 발생할 수 있는 문제점일 수 있다. 즉, JPEG 표준과 같이 하나의 양자화 테이블을 이용하여 다수의 블록들을 양자화하는 이미지 압축 방식은 상기 다수의 블록들 각각의 특성(얼마나 압축(양자화)이 되어도 유사화질 범위를 유지하는지와 관련된 특성)을 고려하여 블록들별로 서로 다른 스케일의 압축(양자화)을 수행하지 못하고 다수의 블록들에 대해 획일적으로 압축(양자화)을 수행하게 된다.Such a problem may be a problem that commonly occurs in an image compression method defined to use one quantization table for a compression target image such as a JPEG standard. That is, an image compression method for quantizing a plurality of blocks using one quantization table as in the JPEG standard is characterized by the characteristics of each of the plurality of blocks (characteristics related to whether a similar image quality range is maintained even when compression (quantization) occurs) (Quantization) of different scales can not be performed for each of the blocks, and compression (quantization) is uniformly performed on a plurality of blocks.

따라서 다수의 블록들에 대해 양자화를 수행하기 위해 이용되는 양자화 테이블이 하나라도, 압축대상 이미지에 포함된 다수의 블록들 각각의 특성을 고려하여 블록별로 적응적으로 압축 정도를 달리할 수 있는 기술적 사상이 요구된다. 또한, 이때에도 전술한 바와 같이 블록별로 DCT 계수 조정 또는 양자화 스케일의 조정을 반복적으로 수행하는 것이 아니라, 블록별 특성에 따라 미리 허용되는 한도(유사화질 범위 내에서) 한 번에 압축(양자화)을 수행할 수 있는 기술적 사상 역시 요구된다.Therefore, even if there is at least one quantization table used for quantizing a plurality of blocks, a technical idea that can adaptively vary the degree of compression on a block-by-block basis considering the characteristics of each of a plurality of blocks included in an image to be compressed . Also, at this time, instead of repeatedly adjusting the DCT coefficient or the quantization scale for each block as described above, compression (quantization) is performed at a time within the allowable limit (within the similar image quality range) Technological considerations that can be performed are also required.

따라서, 본 발명이 이루고자 하는 기술적인 과제는 연속적으로 촬영된 일련의 이미지를 효율적으로 인코딩(압축)할 수 있으면서도, 임의의 이미지에 접근하거나 플레이 백을 용이하게 수행할 수 있는 방법 및 시스템을 제공하는 것이다.SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a method and system capable of efficiently encoding (compressing) a series of continuously captured images while easily accessing any image or playing back will be.

또한, 다른 프레임을 참조하지 않고 인코딩되는 독립 프레임을 인코딩하기 위하여, 압축대상 이미지에 포함된 다수의 블록들에 대해 양자화를 수행하기 위해 이용되는 양자화 테이블이 하나라도, 압축대상 이미지에 포함된 다수의 블록들 각각의 특성을 고려하여 블록별로 적응적으로 압축 정도를 달리할 수 있는 방법 및 시스템을 제공하는 것이다.Also, in order to encode an independent frame encoded without referring to another frame, even if one of the quantization tables used for performing quantization on a plurality of blocks included in the image to be compressed includes a plurality of And a method and system for adaptively varying degrees of compression on a block-by-block basis considering characteristics of blocks.

또한, 압축(양자화된 DCT 계수의 조정)을 수행한 후 압축된 결과가 유사화질 범위 내인지를 판단하는 과정을 반복적으로 수행하는 것이 아니라, 블록별로 특성을 판단한 후 해당 블록에 적합한 양자화 레벨(level)(또는 양자화된 DCT 계수의 조정 정도)를 결정하여 한번에 압축을 수행하도록 함으로써, 현저히 압축 속도를 개선할 수 있는 방법 및 그 시스템을 제공하는 것이다.
Further, instead of repeatedly performing the process of determining whether the compressed result is within the similar image quality range after performing the compression (adjustment of the quantized DCT coefficients), the characteristic is determined for each block, and the quantization level (Or the degree of adjustment of the quantized DCT coefficients), and performing compression at one time, thereby remarkably improving the compression rate.

본 발명의 일 측면에 따르면, 복수의 이미지를 인코딩하기 위한 인코딩 시스템 제공방법으로서, (a) 상기 복수의 이미지 중 일부인 제1이미지들 각각을 인트라프레임 인코딩(Intra-Frame Encoding)하여, 상기 제1이미지들 각각에 상응하는 독립 프레임들을 생성하는 단계 및 (b) 상기 복수의 이미지 중 상기 제1이미지를 제외한 나머지 일부인 제2이미지들 각각을 인터프레임 인코딩(Inter-Frame Encoding)하여, 상기 제2이미지들 각각에 상응하는 의존 프레임을 생성하는 단계를 포함하되, 상기 각각의 의존 프레임은, 상기 독립 프레임 중 어느 하나를 직접 참조하여 인코딩되는 것을 특징으로 하는 인코딩 시스템 제공방법이 제공된다.According to an aspect of the present invention, there is provided a method of providing an encoding system for encoding a plurality of images, the method comprising: (a) performing intra-frame encoding on each of first images that are part of the plurality of images, (B) Inter-frame encoding each of the second images, which is a remaining part of the plurality of images except for the first image, by interframe encoding the first image and the second image, Generating a dependent frame corresponding to each of the independent frames, wherein each of the dependent frames is encoded by directly referring to any one of the independent frames.

일 실시예에서, 상기 의존 프레임은, 상기 의존 프레임으로부터 가장 가까운 선행 독립 프레임 또는 상기 의존 프레임으로부터 가장 가까운 후행 독립 프레임 중 어느 하나를 직접 참조하여 인코딩될 수 있다.In one embodiment, the dependent frame may be encoded by directly referring to either the preceding independent frame that is closest to the dependent frame or the closest following independent frame from the dependent frame.

일 실시예에서, 상기 의존 프레임은, 상기 선행 독립 프레임 또는 상기 후행 독립 프레임 중 가장 가까운 것을 참조하여 인코딩될 수 있다.In one embodiment, the dependent frame may be encoded with reference to the closest of the preceding independent frames or the following independent frames.

일 실시예에서, 상기 복수의 이미지는, 소정의 시간 간격마다 촬영된 연속 이미지일 수 있다.In one embodiment, the plurality of images may be continuous images photographed at predetermined time intervals.

일 실시예에서, 상기 (a) 단계는, 상기 제1이미지 각각에 대하여, 상기 인코딩 시스템이, 상기 제1이미지에 포함되는 블록들 중 특정 블록의 양자화를 수행하기 위하여, 상기 특정 블록에 대응되는 블록특성별 양자화 테이블을 확인하는 단계 및 상기 인코딩 시스템이, 상기 특정 블록의 특정 엘리먼트를 양자화하기 위해, 상기 제1이미지에 포함된 블록들의 양자화를 수행할 때 공통적으로 이용되는 공통 양자화 테이블의 상기 특정 엘리먼트에 대응되는 제1엘리먼트의 값과 확인한 상기 특정 엘리먼트에 대응되는 상기 블록특성별 양자화 테이블의 제2엘리먼트의 값을 이용하여 연산하는 단계를 포함할 수 있다.In one embodiment, the step (a) includes, for each of the first images, the encoding system further comprises a step of, in order to perform quantization of a specific one of the blocks included in the first image, The method comprising the steps of: identifying a quantization table for each block characteristic; and encoding the quantized values of the specific quantities of the specific blocks of the specific block in the common quantization table, which is commonly used when quantizing the blocks included in the first image, Using the value of the first element corresponding to the specific element and the value of the second element of the quantization table for each block characteristic corresponding to the identified specific element.

일 실시예에서, 상기 (a) 단계는, 상기 제1이미지 각각에 대하여, 상기 인코딩 시스템이, 상기 제1이미지에 포함되는 블록들 중 특정 블록의 양자화를 수행하면서 상기 특정 블록에 포함된 각각의 엘리먼트를 상기 제1이미지에 포함된 블록들의 양자화를 수행할 때 공통적으로 이용되는 공통 양자화 테이블을 이용하여 양자화하는 단계 및 상기 인코딩 시스템이, 각각의 엘리먼트들 중 적어도 일부에 대해 선택적으로 상기 각각의 엘리먼트에 대응되는 추가 압축 값을 차감하여 저장하는 단계를 포함하며, 상기 추가 압축 값은, 상기 특정 블록의 특징 값에 기초하여 결정된 상기 특정 블록에 대응되는 블록특성별 양자화 테이블에 기초하여 결정되는 것을 특징으로 할 수 있다.In one embodiment, the step (a) may include: for each of the first images, the encoding system performs quantization of a specific block among blocks included in the first image, Quantizing an element using a common quantization table that is commonly used when performing quantization of blocks included in the first image, and the encoding system further comprises the steps of: selectively encoding, for at least a portion of each element, And the additional compressed value is determined based on a quantization table for each block characteristic corresponding to the specific block determined based on the characteristic value of the specific block .

본 발명의 다른 일 측면에 따르면, 복수의 이미지 중 일부인 제1이미지들 각각이 인트라프레임 인코딩되어 생성된 독립 프레임 및 상기 복수의 이미지 중 상기 제1이미지들을 제외한 나머지 일부인 제2이미지들 각각이 인터프레임 인코딩되어 생성된 의존 프레임을 기록한 기록매체로서, 상기 의존 프레임 각각은, 상기 독립 프레임 중 어느 하나를 직접 참조하여 인코딩된 것을 특징으로 하는 기록매체가 제공된다.According to another aspect of the present invention, each of the first images, which is a part of the plurality of images, is generated by intra frame encoding and the second images, which are the rest of the plurality of images, And recording the dependent frames generated by encoding, wherein each of the dependent frames is encoded by directly referring to any one of the independent frames.

본 발명의 다른 일 측면에 따르면, 상술한 기록매체에 기록된 복수의 프레임을 디코딩하기 위한 디코딩 시스템 제공방법으로서, 상기 복수의 프레임에 포함된 독립 프레임 각각을 인트라프레임 디코딩(Intra-Frame Decoding)하는 단계 및 상기 복수의 프레임에 포함된 의존 프레임 각각에 대하여, 상기 의존 프레임이 참조하는 독립 프레임에 기초하여 상기 의존 프레임을 인터프레임 디코딩(Inter-Frame Decoding)하는 단계를 포함하는 디코딩 시스템 제공방법이 제공된다.According to another aspect of the present invention, there is provided a method of providing a decoding system for decoding a plurality of frames recorded on a recording medium, the method comprising: performing intra frame decoding on each independent frame included in the plurality of frames And interframe decoding the dependent frame based on the independent frame referenced by the dependent frame, for each dependent frame included in the plurality of frames, the method comprising: do.

본 발명의 다른 일 측면에 따르면, 상술한 방법을 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체가 제공된다.According to another aspect of the present invention, there is provided a computer-readable recording medium recording a program for performing the above-described method.

본 발명의 다른 일 측면에 따르면, 복수의 이미지를 인코딩하기 위한 인코딩 시스템으로서, 상기 복수의 이미지 중 일부인 제1이미지들 각각을 인트라프레임 인코딩(Intra-Frame Encoding)하여, 상기 제1이미지들 각각에 상응하는 독립 프레임을 생성하는 인트라프레임 인코딩모듈 및 상기 복수의 이미지 중 상기 제1이미지를 제외한 나머지 일부인 제2이미지들 각각을 인터프레임 인코딩(Inter-Frame Encoding)하여, 상기 제2이미지들 각각에 상응하는 의존 프레임을 생성하는 인터프레임 인코딩모듈을 포함하되, 상기 각각의 의존 프레임은, 상기 독립 프레임 중 어느 하나를 직접 참조하여 인코딩되는 것을 특징으로 하는 인코딩 시스템이 제공된다.According to another aspect of the present invention, there is provided an encoding system for encoding a plurality of images, wherein each of the first images, which is a part of the plurality of images, is Intra-Frame Encoded, An inter-frame encoding module for generating a corresponding independent frame, and Inter-Frame Encoding each of the plurality of images, the second images other than the first image, Wherein each dependent frame is encoded by directly referring to any one of the independent frames. ≪ RTI ID = 0.0 > [0002] < / RTI >

일 실시예에서, 상기 인트라프레임 인코딩모듈은, 상기 제1이미지에 포함된 블록들의 양자화를 수행할 때 공통적으로 이용되는 공통 양자화 테이블 및 상기 제1이미지에 포함되는 블록들 중 특정 블록에 대응되는 블록특성별 양자화 테이블을 정의하는 양자화 테이블 모듈 및 상기 특정 블록의 특정 엘리먼트를 양자화하기 위해, 상기 특정 엘리먼트에 대응되는 상기 양자화 테이블의 제1엘리먼트의 값과 상기 양자화 테이블 모듈에 의해 정의되는 상기 특정 엘리먼트에 대응되는 상기 블록특성별 양자화 테이블의 제2엘리먼트의 값을 이용하여 연산하는 처리모듈을 포함할 수 있다.In one embodiment, the intra-frame encoding module may include a common quantization table commonly used when performing quantization of the blocks included in the first image and a block corresponding to a specific block among the blocks included in the first image, A quantization table module for defining a quantization table for each characteristic and a quantization table module for quantizing a value of a first element of the quantization table corresponding to the specific element and the value of the specific element defined by the quantization table module And a processing module for calculating the value of the second element of the quantization table corresponding to the block characteristic.

일 실시예에서, 상기 인트라프레임 인코딩모듈은, 상기 제1이미지에 포함된 블록들의 양자화를 수행할 때 공통적으로 이용되는 공통 양자화 테이블 및 상기 제1이미지에 포함되는 블록들 중 특정 블록에 대응되는 블록특성별 양자화 테이블을 정의하는 양자화 테이블 모듈 및 상기 참조 프레임에 포함되는 블록들 중 특정 블록의 양자화를 수행하면서 상기 특정 블록에 포함된 각각의 엘리먼트를 상기 양자화 테이블을 이용하여 양자화하고, 양자화된 각각의 엘리먼트들 중 적어도 일부에 대해 선택적으로 상기 각각의 엘리먼트에 대응되는 추가 압축 값을 차감하여 저장하는 처리모듈을 포함하며, 상기 추가 압축 값은, 상기 특정 블록의 특징 값에 기초하여 상기 양자화 테이블 모듈에 의해 결정된 상기 특정 블록에 대응되는 블록특성별 양자화 테이블에 기초하여 결정되는 것을 특징으로 할 수 있다.In one embodiment, the intra-frame encoding module may include a common quantization table commonly used when performing quantization of the blocks included in the first image and a block corresponding to a specific block among the blocks included in the first image, A quantization table module for defining a quantization table for each characteristic and quantizing a specific block among the blocks included in the reference frame while quantizing each element included in the specific block using the quantization table, Further comprising a processing module for subtracting and storing an additional compressed value corresponding to each element of at least a portion of the elements, wherein the additional compressed value is stored in the quantization table module A quantization table for each block characteristic corresponding to the specific block determined by the quantization table Is determined on the basis of the following equation:

본 발명의 다른 일 측면에 따르면, 상술한 기록매체에 기록된 복수의 프레임을 디코딩하기 위한 디코딩 시스템으로서, 상기 복수의 프레임에 포함된 독립 프레임 각각을 인트라프레임 디코딩(Intra-Frame Decoding)하는 인트라프레임 디코딩모듈 및 상기 복수의 프레임에 포함된 의존 프레임 각각에 대하여, 상기 의존 프레임이 참조하는 독립 프레임에 기초하여 상기 의존 프레임을 인터프레임 디코딩(Inter-Frame Decoding)하는 인터프레임 디코딩모듈을 포함하는 디코딩 시스템이 제공된다.
According to another aspect of the present invention, there is provided a decoding system for decoding a plurality of frames recorded on the recording medium, the decoding system comprising: an intra frame decoding unit for decoding each independent frame included in the plurality of frames by Intra- A decoding module and an interframe decoding module for interframe decoding the dependent frames based on the independent frames referenced by the dependent frames, for each dependent frame included in the plurality of frames, / RTI >

본 발명의 기술적 사상에 따르면 인코딩된 일련의 프레임은 해당 프레임이 의존 프레임인 경우에도 한 번의 참조로 디코딩이 가능하다. 따라서, 의존 프레임을 디코딩하는데 소요되는 오버헤드를 현저히 줄일 수 있는 효과가 있다.According to the technical idea of the present invention, a series of encoded frames can be decoded with a single reference even if the frame is a dependent frame. Therefore, there is an effect that the overhead required for decoding the dependent frame can be remarkably reduced.

또한, 독립 프레임을 생성함에 있어, 각각의 압축대상 이미지에 이용되는 하나의 양자화 테이블을 이용하여 블록별로 양자화를 수행하면서도, 블록 별 특성이 고려되어 적어도 하나의 블록에 대해서는 상기 양자화 테이블을 이용하여 양자화를 수행하는 것에 비해 보다 큰 양자화 스케일(또는 압축정도)로 압축이 수행됨으로써 보다 높은 압축률이 제공되면서도 유사화질 범위 내의 압축이미지가 제공될 수 있는 효과가 있다. 또한, 압축대상 이미지에 포함된 소정의 블록에 대해 DCT 계수의 조정이 수행되는 경우에도, 반복적 압축 후의 화질 검사를 수행하는 것이 아니라 블록별 특성에 따라 간단한 연산 만으로도 한 번의 양자화를 통해 압축(DCT 계수의 조정)이 완료되므로, 압축 속도의 현저한 개선이 존재하는 효과가 있다.
In generating independent frames, quantization is performed on a block-by-block basis using one quantization table used for each image to be compressed, and the characteristics of each block are considered, so that at least one block is quantized using the quantization table (Or the degree of compression) compared with the case where the compressed image is compressed, the compressed image within the similar image quality range can be provided while a higher compression ratio is provided. In addition, even when the DCT coefficient adjustment is performed on a predetermined block included in the compression target image, the image quality after the iterative compression is not performed, but the compression (DCT coefficient ) Is completed, there is an effect that there is a remarkable improvement in the compression speed.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 종래의 동영상 인코딩 기술에 의해 인코딩된 각 프레임간의 참조관계를 나타내는 도면이다.
도 2는 종래의 JPEG 압축 방식을 개략적으로 설명하기 위한 도면이다.
도 3은 종래의 반복적인 압축 방식을 개략적으로 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 이미지 인코딩 시스템 및 디코딩 시스템의 개략적인 구성 및 동작을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 이미지 인코딩 시스템에 의해 인코딩된 각 프레임간의 참조관계를 나타내는 도면이다.
도 6은 본 발명의 실시 예에 따른 인트라프레임 인코딩 모듈의 개략적인 구성을 나타내는 도면이다.
도 7은 본 발명의 실시 예에 따른 인트라프레임 인코딩 모듈에서 수행되는 블록특성을 이용한 적응 이미지 압축방법에 따라 양자화된 DCT 계수의 조정방식을 설명하기 위한 도면이다.
도 8은 본 발명의 실시 예에 따른 인트라프레임 인코딩 모듈에서 수행되는 압축대상 이미지의 블록 별 이미지 특징 값 판단방법을 설명하기 위한 도면이다.
도 9는 본 발명의 실시 예에 따른 인트라프레임 인코딩 모듈에서 수행되는 압축대상 이미지의 블록 별 특성 판단방식을 설명하기 위한 도면이다.
BRIEF DESCRIPTION OF THE DRAWINGS A brief description of each drawing is provided to more fully understand the drawings recited in the description of the invention.
1 is a diagram showing a reference relationship between frames encoded by a conventional moving picture encoding technique.
FIG. 2 is a view for schematically explaining a conventional JPEG compression method.
FIG. 3 is a view for schematically explaining a conventional repetitive compression method.
4 is a diagram showing a schematic configuration and operation of an image encoding system and a decoding system according to an embodiment of the present invention.
5 is a diagram showing a reference relationship between frames encoded by an image encoding system according to an embodiment of the present invention.
6 is a diagram showing a schematic configuration of an intra-frame encoding module according to an embodiment of the present invention.
7 is a view for explaining a method of adjusting quantized DCT coefficients according to an adaptive image compression method using block characteristics performed in an intra frame encoding module according to an embodiment of the present invention.
FIG. 8 is a diagram for explaining a method of determining an image feature value for each block of an image to be compressed performed in an intra-frame encoding module according to an embodiment of the present invention.
FIG. 9 is a diagram for explaining a method of determining characteristics of a compression target image for each block performed in an intra-frame encoding module according to an embodiment of the present invention.

본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.In order to fully understand the present invention, operational advantages of the present invention, and objects achieved by the practice of the present invention, reference should be made to the accompanying drawings and the accompanying drawings which illustrate preferred embodiments of the present invention.

또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다.Also, in this specification, when any one element 'transmits' data to another element, the element may transmit the data directly to the other element, or may be transmitted through at least one other element And may transmit the data to the other component.

반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.Conversely, when one element 'directly transmits' data to another element, it means that the data is transmitted to the other element without passing through another element in the element.

이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, the present invention will be described in detail with reference to the preferred embodiments of the present invention with reference to the accompanying drawings. Like reference symbols in the drawings denote like elements.

도 4는 본 발명의 일 실시예에 따른 이미지 인코딩 시스템 및 디코딩 시스템의 개략적인 구성 및 동작을 나타내는 도면이다.4 is a diagram showing a schematic configuration and operation of an image encoding system and a decoding system according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일 실시예에 따른 이미지 인코딩 시스템(10; 이하, '인코딩 시스템'이라고 함)은 복수의 원본 이미지(1)를 각각 인코딩하여 각 이미지에 상응하는 복수의 프레임(2)을 생성할 수 있다.4, an image encoding system 10 (hereinafter referred to as an encoding system) according to an embodiment of the present invention encodes a plurality of original images 1 to generate a plurality of frames 2). ≪ / RTI >

상기 복수의 원본 이미지(1)는 일정 시간 간격마다 연속적으로 촬영된 연속 촬영 이미지일 수 있다. 본 명세서에서 이미지라고 함은 인코딩 전의 원본 이미지를 의미할 수 있다. 상기 복수의 원본 이미지(1)는 RGB 로우 포맷(RGB raw format)의 이미지일 수도 있으며, JPEG 등 다양한 이미지 압축 코덱에 의해 압축된 이미지일 수 있다. 한편, 이하에서 프레임이라 그에 상응하는 원본 이미지를 본 발명의 기술적 사상에 따라 인코딩한 결과물을 의미할 수 있다.The plurality of original images 1 may be consecutively photographed images successively photographed at predetermined time intervals. As used herein, the term " image " may mean an original image before encoding. The plurality of original images 1 may be an RGB raw format image or an image compressed by various image compression codecs such as JPEG. Hereinafter, a frame and its corresponding original image may be the result of encoding according to the technical idea of the present invention.

상기 인코딩 시스템(10)은 생성된 복수의 프레임(2)을 소정의 기록매체에 저장할 수 있다. 생성된 프레임이 저장되는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.The encoding system 10 may store the generated plurality of frames 2 in a predetermined recording medium. The recording medium on which the generated frames are stored includes all kinds of recording apparatuses in which data that can be read by a computer system is stored.

한편, 상기 이미지 디코딩 시스템(20; 이하, '디코딩 시스템'이라고 함)은 상기 복수의 프레임(2)을 디코딩하여 각 프레임에 상응하는 이미지(3)를 복원할 수 있다. 상기 인코딩 시스템(10)은 무손실 압축기법을 이용하여 원본 이미지(1)를 인코딩할 수도 있지만, 실시예에 따라 손실 압축기법을 이용할 수도 있는데, 이 경우 상기 디코딩 시스템(10)에 의해 디코딩되는 이미지(3)의 비트스트림은 그에 상응하는 원본 이미지의 비트 스트림과 동일하지 않을 수 있다.Meanwhile, the image decoding system 20 may decode the plurality of frames 2 and reconstruct the image 3 corresponding to each frame. The encoding system 10 may encode the original image 1 using a lossless compression scheme, but may employ a lossy compression scheme in accordance with an embodiment, in which case the image decoded by the decoding system 10 3 may not be the same as the corresponding bitstream of the original image.

상기 인코딩 시스템(10)은 인트라프레임 인코딩모듈(100) 및 인터프레임 인코딩모듈(200)을 포함할 수 있으며, 상기 디코딩 시스템(20)은 인트라프레임 디코딩모듈(300) 및 인터프레임 디코딩모듈(400)을 포함할 수 있다.The encoding system 10 may include an intra frame encoding module 100 and an inter frame encoding module 200. The decoding system 20 includes an intra frame decoding module 300 and an inter frame decoding module 400, . ≪ / RTI >

본 발명의 실시예에 따라서는, 상술한 구성요소들 중 일부 구성요소는 반드시 본 발명의 구현에 필수적으로 필요한 구성요소에 해당하지 않을 수도 있으며, 또한 실시예에 따라 상기 인코딩 시스템(10) 또는 상기 디코딩 시스템(20)은 이보다 더 많은 구성요소를 포함할 수도 있음은 물론이다. 예를 들어, 상기 인코딩 시스템(10) 또는 상기 디코딩 시스템(20)은 소정의 제어모듈(미도시)을 포함할 수 있으며, 상기 제어모듈은 상기 인코딩 시스템(10) 또는 디코딩 시스템(10)에 포함된 다른 구성들(예를 들면, 상기 인트라프레임 인코딩모듈(100) 및/또는 인터프레임 인코딩모듈(200), 또는 상기 인트라프레임 디코딩모듈(300) 및/또는 인터프레임 디코딩모듈(300) 등)의 기능 및/또는 리소스를 제어할 수 있다.According to an embodiment of the present invention, some of the above-mentioned components may not necessarily correspond to the components necessary for the implementation of the present invention, and the encoding system 10 or the above- It is understood that the decoding system 20 may include more components than this. For example, the encoding system 10 or the decoding system 20 may include a predetermined control module (not shown), which may be included in the encoding system 10 or the decoding system 10 (E.g., the intra-frame encoding module 100 and / or the inter-frame encoding module 200, or the intra-frame decoding module 300 and / or the inter-frame decoding module 300) Functions and / or resources.

상기 이미지 인코딩 시스템(10) 및/또는 상기 이미지 디코딩 시스템(20)은 소정의 데이터 프로세싱 장치(예컨대, 컴퓨터, 모바일 단말기 등)에 설치되어, 상기 데이터 프로세싱 장치에 구비된 하드웨어 및 본 발명의 기술적 사상을 구현하도록 정의되는 소정의 소프트웨어 코드와 유기적으로 결합되는 구성을 의미할 수 있다.The image encoding system 10 and / or the image decoding system 20 may be implemented in any data processing device (e.g., a computer, mobile terminal, etc.) May refer to a configuration that is organically coupled to certain software code that is defined to implement the < RTI ID = 0.0 >

본 명세서에서 '모듈'이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 '모듈'은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스(resource)의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.In this specification, the term 'module' may mean a functional and structural combination of hardware for carrying out the technical idea of the present invention and software for driving the hardware. For example, the 'module' may mean a logical unit of a predetermined code and a hardware resource for the predetermined code to be executed, and may be a code physically connected to the module, or a kind of hardware Or may be easily deduced to the average expert in the field of the present invention.

구현 예에 따라, 상기 상기 이미지 인코딩 시스템(10) 및/또는 상기 이미지 디코딩 시스템(20)은 어느 하나의 물리적 장치가 아니라, 복수의 물리적 장치에 분산되어 설치될 수도 있다. 필요에 따라, 상기 이미지 인코딩 시스템(10) 및/또는 상기 이미지 디코딩 시스템(20)에 포함된 각각의 구성들이 독립적인 물리적 장치들로 구현되면, 이러한 물리적 장치들이 유무선 네트워크를 통해 유기적으로 결합되어 구현되어 본 발명의 기술적 사상에 따른 상기 이미지 인코딩 시스템(10) 및/또는 상기 이미지 디코딩 시스템(20)을 구현할 수도 있다.According to an embodiment, the image encoding system 10 and / or the image decoding system 20 may not be any physical device, but may be distributed over a plurality of physical devices. If necessary, the respective components included in the image encoding system 10 and / or the image decoding system 20 are implemented as independent physical devices, and these physical devices are organically combined through a wired / wireless network To implement the image encoding system 10 and / or the image decoding system 20 according to the technical idea of the present invention.

상기 인트라프레임 인코딩모듈(100)은 상기 복수의 원본 이미지(1) 중 적어도 일부인 제1이미지들 각각을 인트라프레임 인코딩 하여, 상기 제1이미지 각각에 상응하는 독립 프레임을 생성할 수 있다.The intra-frame encoding module 100 may intra-frame encode each of the first images, which are at least a part of the plurality of original images 1, to generate independent frames corresponding to the respective first images.

특정 이미지를 인트라프레임 인코딩한다고 함은, 다른 프레임을 참조하지 않고, 상기 특정 이미지 내에 포함된 정보만을 이용하여 인코딩함을 의미할 수 있으며, 상기 인트라프레임 인코딩모듈(100)은 예를 들어, JPEG 압축 기법 등을 이용하여, 특정 이미지를 인트라프레임 인코딩할 수 있다. 따라서, 인트라프레임 인코딩된 독립 프레임은 다른 프레임을 참조하지 않고 그 안에 포함된 정보만을 이용하여 디코딩될 수 있는 프레임일 수 있다. The intra frame encoding of a specific image may mean encoding using only the information contained in the specific image without referring to another frame. The intra frame encoding module 100 may be configured to encode a specific image using, for example, JPEG compression Technique, etc., a specific image can be intra frame encoded. Thus, an intra frame encoded independent frame can be a frame that can be decoded using only information contained therein without referring to another frame.

한편, 상기 인트라프레임 인코딩모듈(100)은 더욱 효율적으로 이미지를 인코딩하기 위하여, 후술하는 바와 같이 해당 이미지 내의 블록특성을 이용할 수 있다.Meanwhile, the intra-frame encoding module 100 may use the block characteristics in the image as described later in order to more efficiently encode the image.

상기 인터프레임 인코딩모듈(200)은 상기 복수의 원본 이미지(1) 중 상기 제1이미지를 제외한 나머지 일부인 제2이미지들 각각을 인터프레임 인코딩하여, 상기 제2이미지들 각각에 상응하는 의존 프레임을 생성할 수 있다.The interframe encoding module 200 interframe-encodes each of the second images, which is a remaining part of the plurality of original images 1 except for the first image, to generate a dependent frame corresponding to each of the second images can do.

특정 이미지를 인터프레임 인코딩한다고 함은, 상기 특정 이미지의 주변 이미지 또는 이미 인코딩된 주변 프레임(즉, 참조 프레임)을 참조하여 인코딩하는 것을 의미할 수 있다. 따라서, 인터프레임 인코딩되는 의존 이미지는 그 자체에 포함된 정보뿐만 아니라 참조 프레임에 포함된 정보를 함께 이용하여야 디코딩될 수 있다.Interframe encoding of a particular image may mean encoding by reference to a surrounding image of the particular image or a previously encoded neighboring frame (i.e., a reference frame). Therefore, the interframe encoded dependent image can be decoded using the information included in the reference frame as well as the information contained in itself.

특히, 본 발명의 일 실시예에 따른 상기 인터프레임 인코딩모듈(200)은 상기 인트라프레임 인코딩모듈(100)에 의해 생성된 독립 프레임을 직접 참조하여 상기 특정 이미지를 인터프레임 인코딩할 수 있다. 소정의 독립 프레임을 직접 참조하여 인코딩한다고 함은 상기 독립 프레임을 제외한 나머지 주변 프레임은 참조하지 않고, 상기 독립 프레임만을 참조하여 인코딩함을 의미할 수 있다. 즉, MPEG-1 등과 같은 통상적인 동영상 인코딩 기법에서는 다른 프레임에 의존적인 P 프레임을 인코딩할 때, 바로 이전에 위치하는 선행 P 프레임 또는 선행 I 프레임을 참조하지만, 본 발명이 일 실시예에 따른 인터프레임 인코딩모듈(200)은 이와 달리, 모든 의존 프레임이 독립 프레임을 참조하여 인코딩되도록 할 수 있다.In particular, the interframe encoding module 200 according to an exemplary embodiment of the present invention can interframe-encode the specific image by directly referring to the independent frame generated by the intraframe encoding module 100. Directly referring to a predetermined independent frame to encode may refer to encoding only referring to the independent frame without reference to the remaining surrounding frames except for the independent frame. That is, in a conventional moving picture encoding technique such as MPEG-1 or the like, when referring to a preceding P frame or a preceding I frame that is located immediately before encoding a P frame that is dependent on another frame, Frame encoding module 200 may alternatively allow all dependent frames to be encoded with reference to independent frames.

상기 인터프레임 인코딩모듈(200)은 움직임 예측이나 블록 매칭과 같은 MPEG-1 등의 통상적인 동영상 인코딩 기법에서 이용되는 인트라프레임 인코딩 기법을 모두 수행할 수 있다.The interframe encoding module 200 may perform all intra frame encoding techniques used in a conventional moving picture encoding technique such as MPEG-1 such as motion prediction and block matching.

일 실시예에서, 상기 인터프레임 인코딩모듈(200)은 모든 의존 프레임에 대하여, 생성하고자 하는 의존 프레임으로부터 가장 가까운 선행 독립 프레임을 직접 참조할 수 있다. 다른 일 실시예에서는 의존 프레임에 대하여, 생성하고자 하는 의존 프레임과 가장 가까운 후행 독립 프레임을 직접 참조할 수도 있다. 또한 다른 일 실시예에서, 상기 인터프레임 인코딩모듈(200)은 상기 선행 독립 프레임 또는 상기 후행 독립 프레임 중 가장 가까운 것을 참조할 수도 있다. 상술한 세 개의 실시예 중 뒤의 두 실시예에서, 상기 인코딩 시스템(10)은 모든 독립 프레임을 먼저 인코딩한 후에 의존 프레임을 인코딩할 수 있다. 첫 번째 실시예에는 이와 마찬가지로 모든 독립 프레임을 먼저 인코딩할 수도 있지만, 이와 달리 프레임 순서대로 인코딩할 수도 있다.In one embodiment, the interframe encoding module 200 may directly refer to the nearest preceding independent frame from the dependent frame to be generated, for all dependent frames. In another embodiment, for the dependent frame, it may directly refer to the next independent frame that is closest to the dependent frame to be generated. Also, in another embodiment, the interframe encoding module 200 may refer to the closest of the preceding independent frames or the following independent frames. In the latter two embodiments of the three embodiments described above, the encoding system 10 may encode the dependent frames after first encoding all independent frames. Likewise, in the first embodiment, all the independent frames may be encoded first, but otherwise, they may be encoded in frame order.

한편, 특정 프레임과 다른 프레임간의 거리가 가장 가깝다고 함은, 상기 특정 프레임이 촬영된 시간과 상기 다른 프레임이 촬영된 시간의 차이가 가장 작거나, 프레임의 순번의 차이가 가장 작음을 의미할 수 있다.On the other hand, when the distance between a particular frame and another frame is closest, it may mean that the difference between the time at which the specific frame is photographed and the time at which the other frame is photographed is the smallest, or the difference in the order of frames is the smallest .

도 5는 본 발명의 일 실시예에 따른 이미지 인코딩 시스템에 의해 인코딩된 각 프레임간의 참조관계를 나타내는 도면이다.5 is a diagram showing a reference relationship between frames encoded by an image encoding system according to an embodiment of the present invention.

도 5(a) 및 도 5(b)에 도시된 복수의 프레임은 도 1과 마찬가지로 14개의 프레임을 포함하며, 도 1과 유사하게 1번 프레임, 6번 프레임 및 14번 프레임이 독립 프레임이고, 나머지 프레임은 의존 프레임인 경우를 도시하고 있다.The plurality of frames shown in Figs. 5 (a) and 5 (b) include fourteen frames as in Fig. 1, and similarly to Fig. 1, the first frame, the sixth frame and the fourth frame are independent frames, And the remaining frames are dependent frames.

도 5(a)의 예는 모든 의존 프레임이 가장 가까운 선행 독립 프레임을 참조하는 실시예에 의해 구성되는 일련의 프레임을 나타낸다. 따라서, D2 내지 D5은 가장 가까운 선행 독립 프레임인 첫 번째 프레임(I1)을 참조하며, D7 및 D8은 가장 가까운 선행 독립 프레임인 여섯 번째 프레임(I6)을 참조하며, D10 내지 D13은 가장 가까운 선행 독립 프레임인 아홉 번째 프레임(I9)을 참조할 수 있다.The example of Fig. 5 (a) shows a series of frames in which all dependent frames are constructed by an embodiment referring to the nearest preceding independent frame. Therefore, D 2 through D 5 refer to the first frame I 1 , which is the nearest preceding independent frame, D 7 and D 8 refer to the sixth frame I 6 , which is the closest preceding independent frame, and D 10 to D 13 can refer to the nearest preceding independent frame is the ninth frame (I 9).

도 5(b)는 모든 의존 프레임이 가장 가까운 독립 프레임을 참조하는 실시예에 의해 구성되는 일련의 프레임을 나타낸다. D2 및 D3의 경우 가장 가까운 독립 프레임이 선행 프레임 I1이므로 I1을 참조하지만, D4 및 D5의 경우에는 가장 가까운 프레임이 후행 프레임 I6이므로 I6를 참조할 수 있다. 나머지 의존 프레임도 가장 가까운 독립 프레임을 참조함을 확인할 수 있다.FIG. 5 (b) shows a series of frames in which all dependent frames are constructed by an embodiment referring to the nearest independent frame. In case of D 2 and D 3 , I 1 is referred to because the nearest independent frame is the preceding frame I 1. In the case of D 4 and D 5 , I 6 can be referred to because the closest frame is the trailing frame I 6 . The remaining dependent frames also refer to the nearest independent frame.

이와 같이, 본 발명의 일 실시예에 따라 인코딩된 일련의 프레임은 해당 프레임이 의존 프레임인 경우에도 한 번의 참조로 디코딩이 가능하다. 따라서, 의존 프레임을 디코딩하는데 소요되는 오버헤드를 현저히 줄일 수 있는 효과가 있다.As described above, a series of frames encoded according to an embodiment of the present invention can be decoded with a single reference even if the frame is a dependent frame. Therefore, there is an effect that the overhead required for decoding the dependent frame can be remarkably reduced.

한편, 본 발명의 일 실시예에 따른 인코딩 시스템(10)은 2-패스 인코딩을 수행할 수 있다. 즉, 상기 인코딩 시스템(10)은 상술한 바와 같은 인트라프레임 인코딩 및 인터프레임 인코딩을 수행하기 전에 원본 이미지들을 검사하여 상기 원본 이미지들 중 독립 프레임으로 인코딩될 이미지를 결정하고, 이후 상술한 인트라프레임 인코딩 및 인터프레임 인코딩을 수행할 수 있다. 상기 인코딩 시스템(10)은 미리 결정된 일정 순번에 해당하는 이미지를 독립 프레임으로 인코딩하고 나머지 프레임은 의존 프레임으로 인코딩할 수도 있지만, 구현 예에 따라서는 특정 이미지와 상기 특정 이미지의 가장 가까운 선행 독립 프레임과의 차이가 일정 기준을 넘어서는 경우에 상기 특정 이미지가 독립 프레임으로 인코딩되도록 결정할 수도 있다.Meanwhile, the encoding system 10 according to an embodiment of the present invention can perform 2-pass encoding. That is, the encoding system 10 checks the original images before performing the intra-frame encoding and the inter-frame encoding as described above to determine an image to be encoded as an independent frame among the original images, And interframe encoding. The encoding system 10 may encode an image corresponding to a predetermined sequence number into independent frames and encode the remaining frames into dependent frames, but depending on an embodiment, the encoding system 10 may encode a specific image and the closest preceding independent frame It may be determined that the particular image is encoded as a separate frame.

한편, 상기 인코딩 시스템(10)은 인코딩된 각 의존 프레임에 해당 의존 프레임이 참조하는 독립 프레임에 관한 정보(예를 들면, 참조하는 독립 프레임의 순번 또는 파일 이름 등)를 저장할 수 있다. 혹은 상기 인코딩 시스템(10)은 각 의존 프레임이 참조하는 독립 프레임의 정보가 저장된 별도의 메타 데이터를 생성할 수도 있다.Meanwhile, the encoding system 10 may store information on an independent frame referenced by a corresponding dependent frame in each encoded dependent frame (for example, the sequence number of a referenced independent frame or a file name). Alternatively, the encoding system 10 may generate separate metadata in which independent frame information referenced by each dependent frame is stored.

결국 본 발명의 기술적 사상에 의하면, 복수의 이미지들 각각을 모두 독립적으로 인코딩(예컨대, JPEG 압축 등)하여 저장하는 것에 비해, 인터프레임 인코딩되는 프레임의 용량은 줄어드는 효과가 있다. 그러면서도 한 번의 참조만으로 항상 특정 프레임이 디코딩됨을 보장할 수 있으므로, 빠른 시간내에 랜덤 억세스(다이렉트 억세스) 및/또는 플레이 백 등이 구현될 수 있는 효과가 있다.As a result, according to the technical idea of the present invention, the capacity of a frame to be interframe-encoded is reduced compared with the case where each of the plurality of images is independently encoded (for example, JPEG compression). At the same time, it is possible to guarantee that a specific frame is always decoded by only one reference, so that random access (direct access) and / or playback can be implemented in a short time.

일 예에 의하면, 본 발명의 기술적 사상에 따라 복수의 이미지들이 인코딩되면 상기 복수의 이미지들은 복수의 독립 프레임 및 복수의 의존 프레임으로 인코딩될 수 있다. 또한 어느 두 개의 독립 프레임들 사이에는 일정한 개수의 의존 프레임이 존재하도록 구현될 수 있다.According to an example, when a plurality of images are encoded according to the technical idea of the present invention, the plurality of images can be encoded into a plurality of independent frames and a plurality of dependent frames. Also, a certain number of dependent frames may exist between any two independent frames.

예컨대, 도 5c에 도시된 바와 같이, 두 개의 독립 프레임들 사이에 k(k는 2보다 큰 자연수, 예컨대, 4)개의 의존 프레임이 위치하도록 본 발명의 기술적 사상에 따른 인코딩 방법이 구현되는 경우, 임의의 프레임에 접근(디코딩)하기 위한 평균 시간은 I1부터 D5까지의 프레임 중 어느 하나의 프레임에 접근하는데 걸리는 평균 시간과 동일할 수 있다. For example, when an encoding method according to the technical idea of the present invention is implemented such that k (k is a natural number greater than 2, e.g., 4) dependent frames are located between two independent frames, as shown in Fig. 5C, The average time to access (decode) an arbitrary frame may be equal to the average time taken to approach any one of the frames I 1 to D 5 .

이러한 경우, 독립프레임(I1)이 디코딩되는데 걸리는 시간을 T(I)라고 하고, 의존 프레임이 디코딩된 독립 프레임을 참조하여 디코딩되는데 걸리는 시간을 T(D)라고 하면, 다섯 개의 프레임(I1 ~ D5) 각각이 임의로 선택되었을 때 디코딩되는 시간은 각각 T(I), T(I)+T(D), T(I)+T(D), T(I)+T(D), T(I)+T(D)가 될 수 있다. In this case, assuming that the time taken for decoding the independent frame I1 is T (I) and the time taken for decoding the dependent frame with reference to the decoded independent frame is T (D), five frames I1 to D5 ), T (I) + T (D), T (I) + T (D) ) + T (D).

그러면 평균적으로 임의의 프레임에 접근했을 때의 디코딩 시간은 T(I)+4/5T(D)가 된다. 이를 일반화하여 표시하면, 본 발명의 기술적 사상에 따라 인코딩이 수행되었을 때 임의의 프레임의 평균 디코딩 시간은 T(I)+(k-1)/k *T(D)되며, 일반적으로 T(I) >> T(D)이므로, 실질적으로 평균 디코딩 시간은 T(I)에 가까울 수 있다. 즉, 모든 이미지를 인코딩 했을 때의 평균 디코딩 시간인 T(I)와 큰 차이가 나지 않음을 알 수 있다.Then, on average, the decoding time when approaching an arbitrary frame becomes T (I) + 4 / 5T (D). The average decoding time of an arbitrary frame is T (I) + (k-1) / k * T (D) when encoding is performed according to the technical idea of the present invention. ) ≫ >> T (D), substantially the average decoding time may be close to T (I). That is, it can be seen that there is not a large difference from the average decoding time T (I) when all images are encoded.

다만 k를 작은 수로 선택하는 경우에는 독립 프레임의 수가 많음을 의미하며 이러한 경우에는 독립 프레임의 수가 적은 경우에 비해 용량 감축의 효과가 낮아지므로, 필요에 따라 적절한 k의 값을 결정할 수 있다.However, when k is selected as a small number, it means that the number of independent frames is large. In this case, since the effect of capacity reduction is lower than when the number of independent frames is small, the value of k can be determined as necessary.

물론, 두 개의 독립 프레임 사이의 의존 프레임의 수가 도 5b와 같이 다를 수도 있음은 물론이다.Of course, it is needless to say that the number of dependent frames between two independent frames may be different as shown in FIG. 5B.

한편, 일 실시예에서, 상기 인트라프레임 인코딩모듈(100)은 각 독립 프레임을 생성하기 위하여, 해당 프레임에 상응하는 압축 대상 이미지의 블록특성을 이용할 수 있는데, 이하에서 이에 대하여 도 6 내지 도 9를 참조하여 상세히 설명하기로 한다.Meanwhile, in one embodiment, the intra-frame encoding module 100 may use block characteristics of an image to be compressed corresponding to a corresponding frame in order to generate each independent frame. Hereinafter, FIGS. 6 to 9 Will be described in detail with reference to FIG.

도 6은 본 실시 예에 따른 인트라프레임 인코딩 모듈(100)의 개략적인 구성을 나타내는 도면을 나타낸다.FIG. 6 shows a schematic diagram of an intra-frame encoding module 100 according to the present embodiment.

도 6을 참조하면, 본 실시 예에 따라 블록특성을 이용하는 인트라프레임 인코딩 모듈(100)은 처리모듈(110) 및 양자화 테이블 모듈(120)을 포함한다. 상기 인트라프레임 인코딩 모듈 (100)은 특성 판단모듈(130)을 더 포함할 수 있다.Referring to FIG. 6, an intra-frame encoding module 100 using block characteristics according to an embodiment of the present invention includes a processing module 110 and a quantization table module 120. The intra-frame encoding module 100 may further include a feature determination module 130.

또한, 도 6에는 도시되지 않았지만, 상기 인트라프레임 인코딩 모듈 (100)에는 소정의 타입 컨버터(미도시), 인코더(미도시) 등이 더 포함될 수 있음은 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.Although not shown in FIG. 6, the intra frame encoding module 100 may further include a predetermined type converter (not shown), an encoder (not shown), and the like. You will be able to reason.

상기 인트라프레임 인코딩 모듈 (100)은 소정의 압축(인코딩) 대상 이미지를 입력으로 수신할 수 있다. 그러면 본 발명의 기술적 사상에 따른 블록특성을 이용한 적응 이미지 압축방법에 따라 상기 압축 대상 이미지를 압축한 후 인코딩된 프레임을 출력할 수 있다.The intra-frame encoding module 100 may receive a predetermined compressed (encoded) image as an input. Then, the compressed image may be compressed according to the adaptive image compression method using the block characteristic according to the technical idea of the present invention, and the encoded frame may be output.

상기 양자화 테이블 모듈(120)은 상기 인트라프레임 인코딩 모듈(100)이 인코딩하는 압축대상 이미지의 양자화 테이블 모듈(120)을 정의할 수 있다. 또한, 상기 양자화 테이블 모듈(120)은 상기 압축대상 이미지에 포함된 블록 별로 대응하는 블록특성 별 양자화 테이블을 정의할 수 있다. 양자화 테이블 및/또는 블록특성 별 양자화 테이블을 정의한다고 함은, 미리 상기 적응 이미지 압축시스템(100)에 포함된 소정의 저장장치에 상기 양자화 테이블 및/또는 상기 블록특성 별 양자화 테이블을 생성하여 저장하고 있거나, 또는 필요 시에 상기 양자화 테이블 및/또는 상기 블록특성 별 양자화 테이블을 생성할 수 있는 소정의 알고리즘 또는 정보들을 저장하고 있다가 필요 시에 생성하는 것을 의미할 수 있다.The quantization table module 120 may define a quantization table module 120 of a compression target image encoded by the intra frame encoding module 100. In addition, the quantization table module 120 may define a quantization table for each block characteristic for each block included in the compression target image. The quantization table and / or the block property-specific quantization table is defined. The quantization table and / or the block property-specific quantization table are generated and stored in a predetermined storage device included in the adaptive image compression system 100 in advance Or may store, if necessary, predetermined algorithms or information that can generate the quantization table and / or the quantization table for each block property, if necessary.

상기 양자화 테이블 모듈(120)이 정의하는 상기 양자화 테이블은 압축대상 이미지에 따라 적응적으로 정의될 수도 있고, JPEG 표준에서 정의되는 표준 양자화 테이블일 수도 있다. The quantization table defined by the quantization table module 120 may be adaptively defined according to an image to be compressed or may be a standard quantization table defined in the JPEG standard.

또한, 상기 양자화 테이블 모듈(120)은 블록 별로 블록특성 별 양자화 테이블을 정의할 수 있다. 상기 블록특성 별 양자화 테이블은 상기 압축대상 이미지에 포함되는 블록들 모두에 대해 정의될 수도 있고, 구현 예에 따라서는 상기 블록들 중 일부의 블록에 대해서만 정의될 수도 있다. 상기 일부의 블록은 예컨대, 상기 양자화 테이블보다 양자화 스케일이 큰 블록특성 별 양자화 테이블에 의해 양자화가 수행되어도 유사화질 범위를 보장할 수 있는 블록일 수 있다. 즉, 상기 양자화 테이블에 의해 양자화가 수행된 후에도 더 압축(즉, DCT 계수의 조정)이 수행되어도 무방한(유사화질 범위일 수 있는) 블록에 대해서만 상기 양자화 테이블 모듈(120)은 블록특성 별 양자화 테이블을 정의할 수도 있다. 또한 더 압축이 수행된다고 함은, 블록에 포함된 DCT 계수들(즉, 블록의 엘리먼트들) 중 적어도 하나의 계수(엘리먼트)에 대해서 조정(양자화된 DCT 계수의 값을 낮춤)이 수행되는 경우를 포함하는 의미로 정의될 수 있다.In addition, the quantization table module 120 may define a quantization table for each block characteristic for each block. The quantization table for each block characteristic may be defined for all blocks included in the compression target image, or may be defined for only some of the blocks according to an embodiment. The block may be a block capable of ensuring a similar image quality range even if quantization is performed by a quantization table for each block characteristic having a larger quantization scale than the quantization table. That is, the quantization table module 120 can quantize the quantized values of the quantized values of the quantized values of the quantized values (i.e., You can also define a table. Further, the further compression is performed when the adjustment (lowering the value of the quantized DCT coefficient) is performed on at least one coefficient (element) among the DCT coefficients included in the block (i.e., elements of the block) Can be defined as including meaning.

상기 양자화 테이블 모듈(120)은 상기 압축대상 이미지에 포함된 블록들 각각에 대한 특징 값에 기초하여 블록들 각각의 블록특성 별 양자화 테이블을 정의할 수 있다. 상기 특징 값은 해당 블록이 얼마나 양자화가 수행되어도 유사화질을 보장할 수 있는지를 판단할 수 있는 기준이 되는 값일 수 있다. 이러한 특징 값은 상기 특성 판단모듈(130)에 의해 판단될 수 있다. The quantization table module 120 may define a quantization table for each block characteristic of each block based on a feature value of each block included in the compression target image. The feature value may be a value that can be used as a criterion for determining whether the similar block can be guaranteed regardless of how much the block is quantized. Such a characteristic value may be determined by the characteristic determination module 130. FIG.

상기 특성 판단모듈(110)은 상기 적응 이미지 압축시스템(100)으로 입력되는 압축대상 이미지에 포함되는 블록들 중 적어도 하나의 특성을 판단할 수 있다. 즉, 상기 압축대상 이미지의 포함된 블록이 복잡한 이미지인지 단순한 이미지인지 등을 나타내는 복잡도, 화질, 종류(그라데이션(gradation), 스토롱 에지(strong edge), 텍스쳐(texture) 등) 등 압축과 관련된 특성을 판단할 수 있다. 이러한 블록별 특성은 상기 적응 이미지 압축시스템(100)이 손실 압축을 수행하기 때문에 고려되어야 할 특성일 수 있다. 왜냐하면, 상기 압축대상 이미지는 그 특성에 따라 일정 정도의 정보의 손실이 되어도 가시적 화질에는 큰 영향이 없는 이미지일 수도 있고, 상기 일정 정도의 정보의 손실이 있는 경우에는 가시적 화질에 큰 영향이 존재하는 이미지일 수도 있기 때문이다.The characteristic determination module 110 may determine at least one characteristic of the blocks included in the compression target image input to the adaptive image compression system 100. That is, characteristics related to compression such as complexity, image quality, kind (gradation, strong edge, texture, etc.) indicating whether the block including the compression target image is a complex image or a simple image, Can be determined. Such block-specific characteristics may be characteristics to be considered because the adaptive image compression system 100 performs lossy compression. This is because the compression target image may be an image having no significant influence on the visible image quality even if a certain amount of information is lost depending on the characteristic thereof and there is a great influence on the visible image quality when the information loss is a certain degree It may be an image.

따라서, 본 발명의 기술적 사상에 따르면, 상기 특성 판단모듈(130)에 의해 소정의 블록의 특징 값이 판단되면, 상기 블록에 대응되는 블록특성별 양자화 테이블이 정의될 수 있다. 블록특성 별 양자화 테이블이 정의된다고 함은, 상기 블록특성 별 양자화 테이블에 포함되는 각각의 엘리먼트의 값이 정의됨을 의미할 수 있다. 결국, 블록특성 별 양자화 테이블은 해당 블록의 특성에 따라 양자화가 수행되어도 유사화질 범위 내라고 판단되는 양자화 정도의 최대치에 상응하는 양자화 테이블을 의미할 수 있다. Therefore, according to the technical idea of the present invention, when the characteristic value of a predetermined block is determined by the characteristic determination module 130, a quantization table for each block characteristic corresponding to the block can be defined. The definition of the quantization table for each block characteristic may mean that the value of each element included in the quantization table for each block characteristic is defined. As a result, the quantization table for each block characteristic may refer to a quantization table corresponding to the maximum value of the quantization degree determined to be within the similar image quality range even if the quantization is performed according to the characteristics of the block.

이러한 블록특성 별 양자화 테이블은 블록 별 특징 값을 어떻게 정의하는지 여부에 따라 소정의 방식으로 정의될 수 있다. 또한, 특징 값이 판단되면 판단된 특징값에 대응되는 블록특성 별 양자화 테이블이 실험적으로 미리 결정되어 있을 수 있다. The quantization table for each block characteristic can be defined in a predetermined manner according to how the characteristic values for each block are defined. In addition, if a feature value is determined, a quantization table for each block characteristic corresponding to the determined feature value may be experimentally determined in advance.

이론적으로는 압축대상 이미지의 모든 블록 별로 대응되는 블록특성 별 양자화 테이블에 따라 양자화를 수행하면 높은 압축률을 획득할 수 있다. 하지만, 소정의 이미지 압축방식(예컨대, JPEG)은 하나의 압축대상 이미지에 대해서는 동일한 양자화 테이블로 양자화를 수행하여야 하도록 정의되어 있을 수 있다. 따라서, 이러한 경우에는 이전출원에 개시된 바와 같이 전체 블록들에 적용될 양자화 테이블을 적응적으로 적절하게 선택함으로써 압축률을 높이는 방식이 채택될 수 있다.Theoretically, a high compression rate can be obtained by performing quantization according to a quantization table for each block characteristic corresponding to all blocks of the compression target image. However, a predetermined image compression method (for example, JPEG) may be defined to perform quantization on the same quantization table for one compression target image. Therefore, in this case, a method of increasing the compression ratio by adaptively selecting a quantization table to be applied to all the blocks as disclosed in the previous application can be adopted.

하지만, 이처럼 전체 블록들에 적용될 양자화 테이블이 적절히 정의된다고 하더라도, 압축대상 이미지에는 다른 블록들에 비해 복잡도 등이 높아서 상기 양자화 테이블로 양자화를 수행한 후에 추가적으로 압축(양자화 스케일의 증가 또는 DCT 계수의 조정)이 수행되어도 유사화질이 유지될 수 있는 특정 블록이 적어도 하나 존재할 수 있다. 즉, 상기 특정 블록에 대응하는 블록특성 별 양자화 테이블의 양자화 스케일은 압축대상 이미지 전체에 적용되는 양자화 테이블에 비해 클 수 있다. 따라서 상기 특정 블록은 더 압축이 수행되어도 유사화질을 유지할 수 있는 블록일 수 있다.However, even if the quantization table to be applied to all the blocks is appropriately defined, the compression target image has higher complexity than other blocks, so that the quantization table is further compressed after quantization with the quantization table (increase of the quantization scale or adjustment of the DCT coefficient ) May be performed, at least one specific block in which similar image quality can be maintained may exist. That is, the quantization scale of the quantization table for each block characteristic corresponding to the specific block may be larger than the quantization scale applied to the entire compression target image. Therefore, the specific block may be a block capable of maintaining similar image quality even if compression is further performed.

그러므로 본 발명의 기술적 사상은 압축대상 이미지의 블록 별 양자화에 이용되는 전체 양자화 테이블을 이용하여 양자화가 수행되는 경우에도, 블록 별 특성이 고려되어 특정 블록에 대해서는 상기 전체 양자화 테이블로 양자화를 수행한 것에 비해 결과적으로 보다 높은 스케일의 양자화(보다 높은 압축)가 수행될 수 있는 기술적 사상을 제공한다.Therefore, even if the quantization is performed using the entire quantization table used for quantization of blocks in the compression target image, the technical idea of the present invention is that quantization is performed on the specific block with the entire quantization table, Resulting in a higher degree of quantization (higher compression).

이를 위해 상기 처리모듈(110)은 압축대상 이미지에 포함되는 블록 별로 상기 압축대상 이미지 전체에 적용되는 양자화 테이블을 이용하여 양자화를 수행할 수 있다. 양자화를 수행한다고 함은 블록 별 DCT 계수들(엘리먼트들)을 양자화 테이블을 이용하여 양자화하여 양자화된 값을 연산하는 과정을 의미할 수 있다. 이러한 과정을 수행하면서, 상기 처리모듈(110)은 상기 압축대상 이미지에 포함된 특정 블록의 적어도 하나의 엘리먼트(DCT 계수)에 대해서는 상기 양자화 테이블을 이용하여 양자화한 후에도 추가로 압축을 수행할 수 있다. 추가로 압축을 수행한다고 함은 소정의 상기 양자화 테이블을 이용하여 양자화된 값을 그대로 최종 결과 값으로 이용하는 것이 아니라, 상기 양자화된 값에서 소정의 추가 압축 값을 뺀 값을 최종 결과 값으로 특정하는 것을 의미할 수 있다. 이때 상기 추가 압축 값은 상기 특정 블록에 대응되는 블록특성 별 양자화 테이블에 기초하여 결정되는 값일 수 있다. For this, the processing module 110 may perform quantization using a quantization table applied to the entire compression target image for each block included in the compression target image. To perform the quantization means to process quantized values by quantizing the DCT coefficients (elements) for each block using a quantization table. While performing this process, the processing module 110 may further compress at least one element (DCT coefficient) of a specific block included in the image to be compressed, after quantization using the quantization table . The further compression means that a value obtained by subtracting a predetermined additional compression value from the quantized value is used as a final result value instead of directly using the quantized value using a predetermined quantization table as a final result value It can mean. In this case, the additional compression value may be a value determined based on the quantization table for each block characteristic corresponding to the specific block.

상기 처리모듈(110)은 양자화 테이블 모듈(120)로부터 상기 특정 블록에 대응되는 블록특성별 양자화 테이블에 대한 정보를 수신하여, 상기 추가 압축 값을 연산할 수 있다. 그리고 연산된 추가 압축 값을 이용하여, 상기 양자화 테이블을 이용하여 양자화된 값을 조정하여 추가로 압축을 수행할 수 있다. 이러한 추가 압축은 상기 특정 블록의 엘리먼트 별로 수행될 수 있다.The processing module 110 may receive information on a quantization table for each block characteristic corresponding to the specific block from the quantization table module 120, and may calculate the additional compression value. The quantized value may be adjusted using the quantization table using the computed additional compression value to further perform compression. Such additional compression may be performed for each element of the specific block.

일 실시 예에 의하면, 상기 처리모듈(110)은 압축대상 이미지에 포함된 블록별로 양자화 테이블을 이용하여 양자화를 수행하면서, 현재 양자화를 수행하는 블록이 추가 압축을 수행할 블록인지를 판단할 수도 있다. 추가 압축을 수행할 블록인지 여부는 상기 블록의 특징 값에 기초하여 판단될 수 있다. 상기 특징값은 상기 블록의 양자화 스케일에 상응하는 값이므로, 상기 블록의 특징 값에 상응하는 양자화 스케일이 상기 양자화 테이블의 양자화 스케일보다 큰 경우에는 상기 처리모듈(110)은 상기 블록을 추가 압축을 수행할 블록으로 판단할 수도 있다. 물론, 다른 실시 예에 의하면 상기 처리모듈(110)은 양자화를 수행하는 블록이 추가 압축이 가능한지 여부를 별도로 판단하지 않고, 상기 블록들에 포함된 엘리먼트들 각각에 대해 추가 압축 가능한지 여부를 판단할 수도 있다. 엘리먼트들 각각이 추가 압축이 가능한지 여부는, 특정 블록에 포함된 특정 엘리먼트(DCT 계수)에 대응되는 양자화 테이블의 제1엘리먼트의 값이 상기 특정 엘리먼트에 대응되는 블록특성별 양자화 테이블의 제2엘리먼트의 값보다 작은 경우일 수 있다. 즉, 블록특성별 양자화 테이블의 제2엘리먼트의 값이 더 큰 경우에는, 상기 양자화 테이블로 양자화가 수행되면 상기 특정 엘리먼트는 제2엘리먼트로 양자화가 수행되어도 되지만 제2엘리먼트의 값보다 작은 제1엘리먼트의 값으로 양자화가 수행되는 것을 의미할 수 있다.According to an embodiment, the processing module 110 may perform quantization using a quantization table on a block-by-block basis included in an image to be compressed, and may determine whether a current quantization block is a block to be further compressed . Whether or not the block to be subjected to the additional compression can be judged based on the characteristic value of the block. Since the feature value is a value corresponding to the quantization scale of the block, if the quantization scale corresponding to the feature value of the block is larger than the quantization scale of the quantization table, the processing module 110 performs the additional compression of the block It can be judged as a block to be processed. Of course, according to another embodiment, the processing module 110 may determine whether a block that performs quantization is additionally compressible for each of the elements included in the blocks, without separately determining whether additional compression is possible have. Whether or not each of the elements can be further compressed depends on whether the value of the first element of the quantization table corresponding to the specific element (DCT coefficient) included in the specific block is smaller than the value of the second element of the quantization table for each block characteristic Value. ≪ / RTI > That is, when the value of the second element of the quantization table for each block characteristic is larger, if the quantization is performed on the quantization table, the specific element may be quantized by the second element, Lt; RTI ID = 0.0 > a < / RTI >

따라서, 이러한 경우에는 상기 처리모듈(110)은 상기 특정 엘리먼트에 대해서는 제1엘리먼트로 양자화된 값에서 소정의 추가 압축 값을 뺀 값을 최종 양자화 결과 값으로 연산함으로써 상기 특정 엘리먼트에 대해서 추가 압축을 수행할 수 있다.Accordingly, in this case, the processing module 110 performs additional compression on the specific element by calculating a value obtained by subtracting a predetermined additional compression value from a value quantized by the first element, as a final quantization result value for the specific element can do.

본 발명의 기술적 사상에 따라 상기 추가 압축 값을 판단하는 방법의 일 예는 도 7에 도시된다.An example of a method for determining the further compressed value according to the technical idea of the present invention is shown in Fig.

도 7은 본 발명의 실시 예에 따른 인트라프레임 인코딩 모듈(100)에서 수행되는 블록특성을 이용한 적응 이미지 압축방법에 따라 양자화된 DCT 계수의 조정을 수행하는 방식을 설명하기 위한 도면이다.FIG. 7 is a diagram for explaining a method of adjusting quantized DCT coefficients according to an adaptive image compression method using block characteristics performed in an intra-frame encoding module 100 according to an embodiment of the present invention.

도 7을 참조하면, 상기 양자화 테이블 모듈(120)은 도 7에 도시된 바와 같이 압축대상 이미지 전체에 이용되는 양자화 테이블(1)을 정의할 수 있다. 상기 양자화 테이블은 블록이 8ㅧ8 픽셀로 구분되는 경우, q0 ~ q63의 엘리먼트들을 포함할 수 있다. 상기 양자화 테이블(1)은 상기 압축대상 이미지가 JPEG인 경우, JPEG 표준에서 정의되는 표준 양자화 테이블일 수도 있다. 또는 상기 양자화 테이블(1)은 이전출원에서 개시된 바와 같이 상기 압축대상 이미지에 포함된 블록들 각각의 특징 값에 기초하여 결정되는 상기 압축대상 이미지 전체의 특성에 따라 적응적으로 생성될 수도 있다.Referring to FIG. 7, the quantization table module 120 may define a quantization table 1 used for the whole image to be compressed as shown in FIG. The quantization table may include q 0 to q 63 elements when the block is divided into 8 8 pixels. The quantization table 1 may be a standard quantization table defined in the JPEG standard when the compression target image is JPEG. Alternatively, the quantization table 1 may be adaptively generated according to the characteristics of the entire compression target image, which is determined based on the characteristic value of each block included in the compression target image, as disclosed in the previous application.

한편, 상기 양자화 테이블 모듈(120)은 특정 블록의 블록특성별 양자화 테이블(2)을 도 4에 도시된 바와 같이 정의할 수 있다. 상기 블록특성별 양자화 테이블(2)은 상기 특정 블록의 특징값이 특성 판단모듈(130)에 의해 판단되면, 판단된 특징값에 따라 결정될 수 있다. 상기 양자화 테이블 모듈(120)은 특성 판단모듈(130)에 의해 판단되는 특징값에 상응하는 블록특성별 양자화 테이블(2)에 대한 정보를 미리 저장하고 있거나, 적어도 상기 블록특성별 양자화 테이블(2)을 생성할 수 있는 소정의 정보들을 저장하고 있을 수 있다. 상기 블록특성별 양자화 테이블(2) 역시 도 4에 도시된 바와 같이 q'0 ~ q'63의 엘리먼트들을 포함할 수 있다.Meanwhile, the quantization table module 120 can define a quantization table 2 for each block characteristic of a specific block as shown in FIG. The quantization table 2 for each block characteristic may be determined according to the determined characteristic value if the characteristic value of the specific block is determined by the characteristic determination module 130. [ The quantization table module 120 previously stores information on the quantization table 2 for each block characteristic corresponding to the feature value judged by the characteristic judgment module 130 or at least the quantization table 2 for each block characteristic, May store certain information that can be used to generate the information. The block characteristic-specific quantization table 2 may also include elements of q ' 0 to q' 63 as shown in FIG.

그러면, 상기 처리모듈(110)은 특정 블록에 대해 상기 양자화 테이블(1)을 이용하여 양자화를 수행할 수 있다. 양자화는 상기 특정 블록에 포함되는 각각의 엘리먼트들을, 각각의 엘리먼트들에 대응되는 상기 양자화 테이블(1)의 엘리먼트들로 나누어 몫을 연산하는 과정을 통해 수행될 수 있다. 상기 처리모듈(110)은 특정 블록의 특정 엘리먼트(qi(0≤i≤63)에 대응되는 DCT 계수)에 대해 상기 양자화 테이블(1)에 포함된 제1엘리먼트(qi)을 이용하여 우선 양자화를 수행할 수 있다. 그리고 상기 특정 엘리먼트가 추가 압축이 가능한지를 판단할 수 있다. 추가 압축이 가능한지는 상기 제1엘리먼트(qi)가 상기 제1엘리먼트(qi)에 대응되는 상기 블록특성별 양자화 테이블(2)의 엘리먼트 즉, 제2엘리먼트(q'i)보다 작은지 여부에 따라 판단될 수 있다. 즉, 제2엘리먼트(q'i)가 더 큰 경우는 상기 특정 엘리먼트는 추가 압축이 가능할 수 있다. 왜냐하면, 상기 블록특성별 양자화 테이블(2)은 상기 특정 블록에 대해서는 유사화질을 보장하는 양자화 테이블로 미리 정의되어 있는 테이블이므로, 상기 블록특성별 양자화 테이블(2)에 포함된 각각의 엘리먼트를 이용하여 양자화를 수행하여도 무방하기 때문이다. 따라서, 상기 제2엘리먼트(q'i)가 상기 제1엘리먼트(qi)보다 더 큰 경우에는, 추가 압축이 가능함을 의미할 수 있다.Then, the processing module 110 may perform quantization using the quantization table 1 for a specific block. The quantization may be performed by dividing each element included in the specific block by the elements of the quantization table 1 corresponding to each element and calculating a quotient. The processing module 110 determines the priority of a specific block (DCT coefficient corresponding to q i (0? I ? 63) in a specific block) using the first element q i included in the quantization table 1 Quantization can be performed. And may determine whether the particular element is further compressible. Whether further compression is possible is not the first is smaller than the first element (q i) an element that is, the second element (q 'i) of the first element, the block character by a quantization table (2) corresponding to the (q i) . ≪ / RTI > That is, if the second element q ' i is larger, the specific element may be further compressible. This is because the quantization table 2 for each block characteristic is a table defined in advance as a quantization table for guaranteeing similar image quality for the specific block. Therefore, by using each element included in the quantization table 2 for each block characteristic Quantization may be performed. Thus, if the second element q ' i is larger than the first element q i , it may mean that further compression is possible.

그러면, 상기 처리모듈(110)은 상기 특정 엘리먼트에 대해 추가 압축이 가능한 경우, 추가 압축 값을 연산할 수 있다. The processing module 110 may then compute additional compression values if further compression is possible for the particular element.

상기 추가 압축 값은 상기 특정 엘리먼트를 제1엘리먼트(qi)로 양자화한 값에서 추가 압축 값(p)를 차감한 경우의 DCT 계수의 오차 값이 상기 특정 엘리먼트를 제2엘리먼트(q'i)로 양자화하는 경우의 DCT 계수의 오차 값보다 작거나 같은 경우를 만족하는 것이 바람직할 수 있다.The further compressed value is the first element (q i) the error value of the DCT coefficient of the second element (q 'i) for the specific elements in the case of subtracting the added compression value (p) from a quantized value to the particular element It may be preferable to satisfy the case where the error value of the DCT coefficient is equal to or smaller than the error value of the DCT coefficient when quantization is performed.

즉, 추가 압축은 상기 특정 엘리먼트를 제1엘리먼트(qi)로 양자화한 값에서 상기 추가 압축 값(p)만큼 차감함으로써 수행될 수 있다. 이때 상기 특정 엘리먼트를 상기 제1엘리먼트(qi)로 양자화하는 경우에는, 상기 특정 엘리먼트를 반올림한 후 양자화를 수행하므로 최대 오차는 qi/2가 된다. 그리고 양자화된 값에서 p 만큼을 차감하면 최대 오차는 p×qi 만큼 증가할 수 있다. 따라서, 상기 특정 엘리먼트를 상기 제1엘리먼트(qi)로 양자화한 값에서 상기 추가 압축 값만큼 추가 압축이 될 경우의 DCT 계수의 최대 오차는 (qi/2 + p×qi)일 수 있다.That is, further compression may be performed by subtracting the additional compression value (p) from the quantized value of the particular element with the first element (q i ). At this time, when the specific element is quantized with the first element q i , the maximum error is q i / 2 since the specific element is rounded and then quantized. And subtracting p from the quantized value, the maximum error can be increased by p x q i . Therefore, the maximum error of the DCT coefficient when the additional element is further compressed by a value obtained by quantizing the specific element with the first element (q i ) may be (q i / 2 + p x q i ) .

또한, 상기 특정 엘리먼트를 제2엘리먼트(q'i)로 양자화는 경우의 DCT 계수의 최대 오차는 q'i/2일 수 있다.In addition, the maximum error of the DCT coefficient when quantizing the specific element into the second element q'i may be q ' i / 2.

따라서, 양자화를 수행해도 무방한 값인 제2엘리먼트(q'i)로 양자화를 수행했을 때의 오차(q'i/2)보다 오차가 작거나 같은 값을 갖게 하는 추가 압축 값(p)는 도 7에 도시된 바와 같이 (qi/2 + p×qi) ≤ (q'i/2)를 만족하게 된다. 따라서, 이러한 조건을 만족하는 추가 압축 값(p)을, 특정 엘리먼트를 제1엘리먼트(qi)로 양자화한 값에서 차감하면, 상기 특정 엘리먼트가 추가 압축이 수행된 최종 양자화 결과 값이 될 수 있다.Therefore, even if the quantization is performed, the additional compressed value p having the error smaller than or equal to the error (q ' i / 2) when the quantization is performed with the second element q'i, (Q i / 2 + p x q i ) (q ' i / 2) as shown in FIG. Therefore, if the additional compressed value p satisfying this condition is subtracted from the value obtained by quantizing the specific element with the first element qi, the specific element may be the final quantization result value after the further compression.

이러한 방식으로 상기 처리모듈(110)은 상기 특정 블록의 각각의 엘리먼트들에 대해 추가 압축이 가능한 경우 선택적으로 추가 압축을 수행함으로써, 결과적으로 양자화 테이블을 이용하여 양자화를 수행할 때보다 더 압축이 가능한 상기 특정 블록에 대해서, 압축대상 이미지에 공통적으로 이용되는 상기 양자화 테이블(1)을 통해 양자화를 수행하면서도 실제로는 상기 특정 블록에 대해서는 상기 특정 블록의 특성이 고려된 적응적 압축이 가능하게 되는 효과가 있다.In this manner, the processing module 110 may perform additional compression, if possible, for each of the elements of the particular block, if further compression is possible, resulting in more compression than when performing quantization using the quantization table The quantization is performed on the specific block through the quantization table 1 commonly used for the compression target image, but the effect of adaptively compressing the specific block considering the characteristics of the specific block is actually possible have.

또한, 상기 특정 블록에 대해 미리 정의된 상기 블록특성별 양자화 테이블(2)을 이용하여 간단한 연산을 통해서 상기 특정 블록에 대한 압축(양자화)이 완료되므로 종래의 이터러티브(iterative)한 압축방식에 비해 현저한 압축속도의 개선이 가능한 효과가 있다.In addition, since the compression (quantization) of the specific block is completed through a simple operation using the quantization table 2 for each block characteristic defined in advance for the specific block, the conventional iterative compression method It is possible to remarkably improve the compression rate.

한편, 상기 특성 판단모듈(130)은 상기 압축대상 이미지에 포함된 각각의 블록 별 특징 값을 산출할 수 있다.Meanwhile, the characteristic determination module 130 may calculate a feature value for each block included in the compression target image.

상기 특징 값을 산출하는 방식은 다양한 방식이 존재할 수 있으며, 어떠한 경우든 상기 특징 값은 특정 블록의 양자화 스케일을 판단하는 기준이 되는 값으로 정의될 수 있다.There are various schemes for calculating the feature value. In any case, the feature value may be defined as a reference value for determining a quantization scale of a specific block.

본 발명의 일 실시 예에 따른 특징 값을 판단하는 방법은 도 5에 도시된다.A method for determining a feature value according to an embodiment of the present invention is shown in Fig.

도 8은 본 발명의 실시 예에 따른 인트라프레임 인코딩 모듈에서 수행되는 압축대상 이미지의 블록 별 이미지 특징 값을 판단하는 방법을 설명하기 위한 도면이다.FIG. 8 is a diagram for explaining a method of determining an image feature value for each block of an image to be compressed performed in an intra-frame encoding module according to an embodiment of the present invention.

도 7 및 도 8을 참조하면, 적응 이미지 압축시스템(100)에 포함된 소정의 타입 컨버터(미도시)에 의해 그레이 이미지로 타입 컨버팅된 압축대상 이미지의 데이터가 상기 특성 판단모듈(110)로 입력될 수 있다. 상기 그레이 이미지는 예컨대, 이미지의 루미넌스(luminence) 값을 갖는 데이터일 수 있으며, 소정의 버퍼에 저장될 수 있다. 그러면, 상기 특성 판단모듈(110)은 상기 버퍼로부터 상기 데이터를 독출할 수 있다. 물론, 상기 적응 이미지 압축시스템(100)에 인코딩된 이미지 파일(예컨대, JPEG 파일 등)이 입력되는 경우에는, 소정의 디코더를 통해 인코딩된 이미지 파일이 디코딩되어 원본 이미지에 상응하는 데이터(RGB raw image)로 변환된 후, 상기 타입 컨버터(미도시)로 입력될 수도 있다.7 and 8, data of a compression target image type-converted into a gray image by a predetermined type converter (not shown) included in the adaptive image compression system 100 is input to the characteristic determination module 110 . The gray image may be, for example, data having a luminance value of the image, and may be stored in a predetermined buffer. Then, the characteristic determination module 110 may read the data from the buffer. Of course, when an encoded image file (for example, a JPEG file) is input to the adaptive image compression system 100, the image file encoded through a predetermined decoder is decoded and data corresponding to the original image (RGB raw image ), And then input to the type converter (not shown).

상기 특성 판단모듈(110)은 이미지를 복수의 블록으로 구분할 수 있다. 일 예에 의하면, 상기 특성 판단모듈(110)은 JPEG 표준과 같이 상기 블록의 크기를 8ㅧ8로 설정할 수 있지만, 이에 한정되는 것은 아니다.The characteristic determination module 110 may divide the image into a plurality of blocks. According to an example, the characteristic determination module 110 may set the size of the block to 8 8, as in the JPEG standard, but is not limited thereto.

상기 특성 판단모듈(110)은 구분된 복수의 블록들 각각의 특징 값을 산출할 수 있다. 상기 특징 값은 각각의 블록에 상응하는 부분 이미지의 특징을 나타낼 수 있는 정보를 의미할 수 있다. 상기 특징 값은 각 블록이 얼마나 압축될 수 있는지와 관련된 값일 수 있다. 본 명세서에서는 상기 특징 값을 BQI(Block Quality Indicator)로 명명하기로 한다.The characteristic determination module 110 may calculate characteristic values of each of the plurality of divided blocks. The feature value may mean information that can indicate the feature of the partial image corresponding to each block. The feature value may be a value related to how much each block can be compressed. In the present specification, the feature value will be referred to as a BQI (Block Quality Indicator).

상기 BQI는 도 8에 도시된 바와 같이 상기 블록에 포함된 각각의 픽셀들의 디퍼렌셜 값의 평균에 의해 산출될 수 있다. 디퍼렌셜 값의 평균이 높다는 것은 상기 블록에 상응하는 부분 이미지가 복잡도가 높음을 나타낼 수도 있고, 부분 이미지 내에 루미넌스의 변화가 많음을 나타낼 수도 있다. 그리고 이처럼 디퍼렌셜 값의 평균 즉, BQI가 높다는 것은 일반적으로 압축이 많이 되어도 가시적인 화질의 저하가 상대적으로 낮음을 의미할 수도 있다.The BQI may be calculated by an average of the differential values of the respective pixels included in the block as shown in FIG. A high average value of the differential values may indicate that the partial image corresponding to the block has a high degree of complexity or that there is a large variation in luminance within the partial image. And, the average of the differential values, that is, the BQI is generally high, may mean that the degradation of the visual quality is relatively low even if the compression is large.

상기 블록에 포함된 어느 하나의 픽셀(예컨대, 10)의 디퍼렌셜 값은 상기 필셀(10)과 주변 픽셀들(11~17) 각각의 값의 차이들(d1~d7)의 평균을 의미할 수 있다. 이처럼, 상기 블록에 포함된 어느 하나의 픽셀의 디퍼렌셜 값이 결정되면, 나머지 픽셀들에 대해서도 동일한 방식으로 디퍼렌셜 값이 결정될 수 있다. 그러면, 상기 특성 판단모듈(110)은 상기 블록에 포함된 모든 픽셀들 각각의 디퍼렌셜 값을 산출할 수 있고, 이에 따라 상기 블록의 BQI 값을 산출할 수 있다.The differential value of any one pixel (e.g., 10) included in the block may mean an average of differences d1 to d7 between the values of the pixel 10 and the neighboring pixels 11 to 17 . As such, if a differential value of one of the pixels included in the block is determined, a differential value may be determined for the remaining pixels in the same manner. Then, the characteristic determination module 110 may calculate a differential value of each of all the pixels included in the block, and thereby calculate the BQI value of the block.

이처럼 소정의 블록에 대해 특징값 즉, BQI가 산출되면, 산출된 BQI에 대응되는 블록특성별 양자화 테이블이 결정될 수 있다. BQI에 대응되는 블록특성별 양자화 테이블은 반복적인 실험을 통해 결정되어 미리 양자화 테이블 모듈(120)에 의해 정의될 수 있다. 즉, 특정 블록의 BQI 값이 산출되면, 산출된 BQI의 값에 해당하는 블록특성별 양자화 테이블이 실험을 통해 또는 소정의 방식을 통해 미리 결정되어 있을 수 있으며, 미리 결정되어 있는 블록특성별 양자화 테이블에 대한 정보가 상기 양자화 테이블 모듈(120)에 미리 저장되어 있을 수 있다. 구현 예에 따라서는, 상기 양자화 테이블 모듈(120)은 BQI를 이용하여 블록특성별 양자화 테이블을 소정의 방식으로 생성할 수 있다. 예컨대, BQI의 값을 이용하여 표준 양자화 테이블의 엘리먼트의 값들을 스케일링(scaling)하여 블록특성별 양자화 테이블을 생성할 수도 있다. When a characteristic value, i.e., a BQI, is calculated for a predetermined block, a quantization table for each block characteristic corresponding to the calculated BQI can be determined. The quantization table for each block characteristic corresponding to the BQI may be determined through repeated experiments and defined by the quantization table module 120 in advance. That is, when a BQI value of a specific block is calculated, a quantization table for each block characteristic corresponding to the calculated BQI value may be determined in advance through experiments or a predetermined method, and a predetermined quantization table for each block characteristic May be stored in the quantization table module 120 in advance. According to an embodiment, the quantization table module 120 can generate a quantization table for each block characteristic using a BQI in a predetermined manner. For example, the quantization table for each block characteristic may be generated by scaling the values of elements of the standard quantization table using the value of BQI.

어떠한 경우든 본 발명의 기술적 사상에 의하면, 블록별 특성(즉, 특징값)에 따라 블록특성별 양자화 테이블이 정의될 수 있고, 상기 블록특성별 양자화 테이블에 기초하여 상기 적응 이미지 압축시스템(100)은 양자화 테이블을 이용하여 양자화된 값을 조정하여 추가적인 압축을 수행할 수 있다.In any case, according to the technical idea of the present invention, a quantization table for each block characteristic can be defined according to a block characteristic (i.e., a characteristic value), and the adaptive image compression system 100, Can perform additional compression by adjusting quantized values using a quantization table.

한편, 압축대상 이미지 전체에 적용될 양자화 테이블 역시 압축대상 이미지의 특성에 의해 결정될 수도 있다. 압축대상 이미지의 특성은 각각의 블록별 특징값 즉, BQI에 의해 결정될 수 있다.The quantization table to be applied to the entire compression target image may also be determined by the characteristics of the compression target image. The characteristic of the compression target image can be determined by the characteristic value of each block, that is, the BQI.

상기 BQI에 기초하여 상기 압축대상 이미지의 특성을 판단하는 방식은 다양할 수 있다. 예컨대, 상기 BQI의 산술평균값 등과 같은 소정의 대표 값을 상기 압축대상 이미지의 특성으로 판단할 수 있다. 어떠한 방식이든 상기 BQI에 기초하여 상기 압축대상 이미지 전체의 특성을 결정할 수 있다. 상기 특성은 상기 압축대상 이미지가 얼마나 압출될 수 있는지를 나타낼 수 있는 소정의 값일 수도 있고, 상기 BQI 값들의 조합 또는 통계를 의미할 수도 있다. 이처럼 상기 특성을 판단할 수 있는 다양한 구현 예가 가능하다.The manner of determining the characteristics of the compression target image based on the BQI may vary. For example, a predetermined representative value such as an arithmetic average value of the BQI may be determined as the characteristic of the compression target image. In any manner, the characteristics of the whole image to be compressed can be determined based on the BQI. The characteristic may be a predetermined value that can indicate how much the image to be compressed can be extruded, or a combination or statistics of the BQI values. Various implementations are possible to determine the characteristics as described above.

일 실시 예에 의하면, 상기 양자화 테이블 모듈(120)은 특성 판단모듈(130)에 의해 판단된 블록들 각각에 상응하는 복수의 BQI들 각각을 소정의 분류기준에 기초하여 분류할 수 있다. 즉, 복수의 블록들 각각의 특성을 상기 분류기준에 기초하여 분류할 수 있다. 그리고, 분류된 결과를 이용하여 상기 압축대상 이미지 전체의 특성을 판단할 수도 있다.According to an exemplary embodiment, the quantization table module 120 may classify each of the plurality of BQIs corresponding to each of the blocks determined by the characteristic determination module 130 based on a predetermined classification criterion. That is, the characteristics of each of the plurality of blocks can be classified based on the classification criterion. The characteristics of the entire compression target image may be determined using the classified result.

이러한 일 예는 도 9에 도시된다.An example of this is shown in Fig.

도 9는 본 발명의 실시 예에 따라 압축대상 이미지의 특성을 판단하는 방식을 설명하기 위한 도면이다.9 is a diagram for explaining a method of determining characteristics of an image to be compressed according to an embodiment of the present invention.

도 9를 참조하면, 상기 양자화 테이블 모듈(120)은 각각의 블록들이 가질 수 있는 BQI를 소정의 범위로 분류하는 기준을 미리 저장하고 있을 수 있다. 그리고, 이러한 분류의 기준에 기초하여, 도 9에 도시된 바와 같이 BQI가 제1범위(예컨대, 0.5보다 적은 범위) 보다 적은 블록을 제1분류, 제2범위(예컨대, BQI가 0.5보다 크거나 같고 1보다 적은 범위)에 해당하는 블록을 제2분류, 제3범위(예컨대, BQI가 1보다 크거나 같고 1.5보다 적은 범위)에 해당하는 블록을 제3분류로 구분할 수 있다.Referring to FIG. 9, the quantization table module 120 may previously store a criterion for classifying the BQI that each block has into a predetermined range. Based on the criterion of this classification, a block having a BQI smaller than a first range (for example, less than 0.5) is divided into a first classification, a second range (e.g., a BQI is greater than 0.5 And a block corresponding to a third range (for example, a range where BQI is greater than or equal to 1 and less than 1.5) can be classified into a third classification.

그러면 유사한 특성을 가지는 블록들은 동일한 분류로 분류될 수 있다. 따라서 상기 양자화 테이블 모듈(120)은 상기 압축대상 이미지에 포함되는 블록들 중 어떤 분류에 해당하는 블록이 몇 개인지에 따라 상기 압축대상 이미지 전체의 특성을 결정하고, 결정된 특성에 따라 상기 양자화 테이블을 정의할 수 있다. 예컨대, 제1분류에 해당하는 블록이 많은 경우에는, 압축률이 작아야 가시적 화질 저하가 없는 블록이 많은 것을 의미할 수 있다. 따라서, 이러한 경우에는 상기 양자화 테이블 모듈(120)은 상기 압축대상 이미지 전체의 압축률이 낮아야 가시적 화질 저하가 없는 이미지라고 판단할 수 있다. 그러면, 그에 적합한 QSF(quntaization scale factor) 값을 결정할 수 있다. 물론, 제1분류 뿐만 아니라, 다른 다양한 분류에 해당하는 블록의 개수 등에 기초하여 상기 양자화 테이블 모듈(120)은 상기 압축대상 이미지의 특성 즉, 상기 압축대상 이미지의 압축정도를 나타내는 QSF를 결정할 수 있다.Then blocks with similar characteristics can be classified into the same classification. Therefore, the quantization table module 120 determines the characteristics of the entire compression target image according to which block among the blocks included in the compression target image, and defines the quantization table according to the determined characteristics can do. For example, when there are many blocks corresponding to the first classification, a small compression ratio may mean that many blocks have no deterioration in visual quality. Therefore, in this case, the quantization table module 120 can determine that the compression rate of the entire compression target image is low so that the image is free from visible quality deterioration. Then, a quntaization scale factor (QSF) value suitable for that can be determined. Of course, the quantization table module 120 can determine the QSF indicating the characteristic of the compression target image, that is, the compression degree of the compression target image, based on not only the first classification but also the number of blocks corresponding to various other classification .

상기 BQI의 분류기준 즉, BQI를 분류하는 기준 값들 및 분류된 BQI에 기초하여 어떠한 QSF 값이 결정될지 여부는 실험적으로 결정되어 미리 상기 적응 이미지 압축시스템(100)에 저장되어 있을 수 있다. 예컨대, 제1분류를 결정하는 기준 값(예컨대, 0.5)은 반복적인 실험 및 이에 따른 압축결과의 검증에 통해 결정될 수 있다. 또한, 상기 BQI가 어떠한 값들을 가지는지, 어떠한 분포를 가지는지, 또는 어떤 분류에 속하는 블록들이 몇 개(또는 전체 블록에서 차지하는 비율)인지 여부 등에 따라 실험적으로 결정된 QSF 값들에 대한 정보가 즉, QSF 판단 리스트가 미리 상기 적응 이미지 압축시스템(100)에 저장되어 있을 수 있다. 그리고, 이러한 QSF 판단 리스트에 기초하여 상기 QSF 값이 결정될 수 있다.Whether or not the QSF value is determined based on the classification criterion of the BQI, that is, the reference values for classifying the BQI and the classified BQI, may be experimentally determined and stored in the adaptive image compression system 100 in advance. For example, a reference value (e.g., 0.5) that determines the first classification may be determined through repeated experiments and verification of the compression result accordingly. In addition, information on experimentally determined QSF values depending on what values the BQI has, what kind of distribution, how many blocks belonging to a classification (or a ratio occupied by the whole block), etc., A judgment list may be stored in the adaptive image compression system 100 in advance. The QSF value may be determined based on the QSF decision list.

양자화 테이블 모듈(120)에 의해 QSF 값이 결정되면, 상기 양자화 테이블 모듈(120)은 결정된 QSF 값에 기초하여 적응 양자화 테이블을 생성할 수 있다. 또한, 이전출원에 개시된 바와 같이 상기 적응 양자화 테이블을 생성하기 위해 표준 양자화 테이블이 이용될 수도 있다. 각각의 블록별 특징값에 기초하여 전체 압축대상 이미지의 특성이 정의되고, 그에 따라 상기 양자화 테이블이 정의되는 기술적 사상은 이전출원에 상세히 개시되어 있으므로 상세한 설명은 생략하도록 한다.Once the QSF value is determined by the quantization table module 120, the quantization table module 120 may generate an adaptive quantization table based on the determined QSF value. A standard quantization table may also be used to generate the adaptive quantization table as disclosed in the prior application. The technical idea in which the characteristics of the entire compression target image are defined on the basis of the characteristic values of each block and the quantization table is defined in accordance with each block is described in detail in the previous application, so a detailed description will be omitted.

결국, 본 발명의 기술적 사상에 의하면, 하나의 양자화 테이블을 이용하여 양자화를 수행하면서도 적어도 하나의 블록에 대해서는 상기 양자화 테이블에 상응하는 양자화 스케일과는 서로 다른 양자화 스케일로 양자화를 수행할 수 있는 효과가 있다. 또한, 종래의 압축방식과 같이 압축을 수행한 후 아티팩트가 존재하는지를 검사하는 과정을 반복적으로 수행하는 것이 아니라, 미리 얼마만큼 압축대상 이미지를 압축 또는 추가압축 할지를 결정한 후, 한 번의 압축으로 압축을 수행할 수 있으므로, 현저한 압축 속도의 성능 개선 효과가 존재할 수 있다.As a result, according to the technical idea of the present invention, it is possible to perform quantization with a quantization scale different from the quantization scale corresponding to the quantization table for at least one block while performing quantization using one quantization table have. Further, instead of repeatedly performing the process of checking whether an artifact exists after performing compression as in the conventional compression method, it is determined how much the compression target image is compressed or added beforehand, and then compression is performed by one compression , There can be a performance improvement effect of remarkable compression speed.

다시 도 4를 참조하면, 상기 디코딩 모듈(20)은 상술한 바와 같이, 인트라 프레임 디코딩 모듈(300) 및 인터프레임 디코딩모듈(400)을 포함할 수 있다.Referring again to FIG. 4, the decoding module 20 may include an intra-frame decoding module 300 and an inter-frame decoding module 400, as described above.

상기 인트라프레임 디코딩모듈(300)은 복수의 프레임에 포함된 독립 프레임 각각을 인트라프레임 디코딩할 수 있다. 한편, 인터프레임 디코딩모듈(400)은 상기 복수의 프레임에 포함된 의존 프레임 각각에 대하여, 상기 의존 프레임이 참조하는 독립 프레임에 기초하여 상기 의존 프레임을 인터프레임 디코딩할 수 있다.The Intra-frame decoding module 300 may perform Intra-frame decoding on each independent frame included in a plurality of frames. On the other hand, the interframe decoding module 400 may interframe-decode the dependent frames based on independent frames referenced by the dependent frames, for each of the dependent frames included in the plurality of frames.

본 발명의 실시 예에 따른 블록특성을 이용한 적응 이미지 압축방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The adaptive image compression method using the block characteristic according to the embodiment of the present invention can be implemented as a computer readable code on a computer readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a hard disk, a floppy disk, an optical data storage device, and the like in the form of a carrier wave (for example, . In addition, the computer-readable recording medium may be distributed over network-connected computer systems so that computer readable codes can be stored and executed in a distributed manner. And functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers skilled in the art to which the present invention pertains.

본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.

Claims (13)

복수의 이미지를 인코딩하기 위한 인코딩 시스템 제공방법으로서,
(a) 상기 복수의 이미지 중 일부인 제1이미지들 각각을 인트라프레임 인코딩(Intra-Frame Encoding)하여, 상기 제1이미지들 각각에 상응하는 독립 프레임을 생성하는 단계; 및
(b) 상기 복수의 이미지 중 상기 제1이미지들을 제외한 나머지 일부인 제2이미지들 각각을 인터프레임 인코딩(Inter-Frame Encoding)하여, 상기 제2이미지들 각각에 상응하는 의존 프레임을 생성하는 단계를 포함하되,
상기 각각의 의존 프레임은,
상기 독립 프레임 중 어느 하나를 직접 참조하여 인코딩되는 것을 특징으로 하는 인코딩 시스템 제공방법.
A method for providing an encoding system for encoding a plurality of images,
(a) generating an independent frame corresponding to each of the first images by Intra-Frame Encoding each of first images that are part of the plurality of images; And
(b) interframe encoding each of the plurality of images, the second images being a remaining part excluding the first images, to generate a dependent frame corresponding to each of the second images However,
Each dependent frame comprising:
Wherein the reference frame is directly referenced to one of the independent frames.
제1항에 있어서, 상기 의존 프레임은,
상기 의존 프레임으로부터 가장 가까운 선행 독립 프레임 또는 상기 의존 프레임으로부터 가장 가까운 후행 독립 프레임 중 어느 하나를 직접 참조하여 인코딩되는 인코딩 시스템 제공방법.
2. The method of claim 1,
Wherein either the preceding independent frame closest to the dependent frame or the closest following independent frame from the dependent frame is directly referenced.
제2항에 있어서, 상기 의존 프레임은,
상기 선행 독립 프레임 또는 상기 후행 독립 프레임 중 가장 가까운 것을 참조하여 인코딩되는 인코딩 시스템 제공방법.
3. The method of claim 2,
Wherein the reference frame is encoded with reference to the nearest one of the preceding independent frame or the following independent frame.
제1항에 있어서,
상기 복수의 이미지는,
소정의 시간 간격마다 촬영된 연속 이미지인 인코딩 시스템 제공방법.
The method according to claim 1,
Wherein the plurality of images include:
Wherein each of the plurality of images is a continuous image photographed at predetermined time intervals.
제1항에 있어서, 상기 (a) 단계는,
상기 제1이미지 각각에 대하여,
상기 인코딩 시스템이, 상기 제1이미지에 포함되는 블록들 중 특정 블록의 양자화를 수행하기 위하여, 상기 특정 블록에 대응되는 블록특성별 양자화 테이블을 확인하는 단계; 및
상기 인코딩 시스템이, 상기 특정 블록의 특정 엘리먼트를 양자화하기 위해, 상기 제1이미지에 포함된 블록들의 양자화를 수행할 때 공통적으로 이용되는 공통 양자화 테이블의 상기 특정 엘리먼트에 대응되는 제1엘리먼트의 값과 확인한 상기 특정 엘리먼트에 대응되는 상기 블록특성별 양자화 테이블의 제2엘리먼트의 값을 이용하여 연산하는 단계를 포함하는 인코딩 시스템 제공방법.
The method of claim 1, wherein the step (a)
For each of the first images,
Wherein the encoding system comprises: checking a quantization table for each block characteristic corresponding to the specific block, in order to quantize a specific block among the blocks included in the first image; And
Wherein the encoding system is configured to quantize a specific element of the specific block by comparing a value of a first element corresponding to the specific element of a common quantization table commonly used when performing quantization of blocks included in the first image, And using the value of the second element of the quantization table for each block characteristic corresponding to the identified specific element.
제1항에 있어서, 상기 (a) 단계는,
상기 제1이미지 각각에 대하여,
상기 인코딩 시스템이, 상기 제1이미지에 포함되는 블록들 중 특정 블록의 양자화를 수행하면서 상기 특정 블록에 포함된 각각의 엘리먼트를 상기 제1이미지에 포함된 블록들의 양자화를 수행할 때 공통적으로 이용되는 공통 양자화 테이블을 이용하여 양자화하는 단계; 및
상기 인코딩 시스템이, 각각의 엘리먼트들 중 적어도 일부에 대해 선택적으로 상기 각각의 엘리먼트에 대응되는 추가 압축 값을 차감하여 저장하는 단계를 포함하며,
상기 추가 압축 값은,
상기 특정 블록의 특징 값에 기초하여 결정된 상기 특정 블록에 대응되는 블록특성별 양자화 테이블에 기초하여 결정되는 것을 특징으로 하는 인코딩 시스템 제공방법.
The method of claim 1, wherein the step (a)
For each of the first images,
Wherein the encoding system quantizes a specific block among the blocks included in the first image, and quantizes each element included in the specific block to quantize the blocks included in the first image, Quantizing using a common quantization table; And
Wherein the encoding system comprises selectively storing, for at least some of each of the elements, a further compression value corresponding to the respective element,
The further compressed value may be,
Wherein the quantization table is determined based on a quantization table for each block characteristic corresponding to the specific block determined based on the characteristic value of the specific block.
복수의 이미지 중 일부인 제1이미지들 각각이 인트라프레임 인코딩되어 생성된 독립 프레임; 및
상기 복수의 이미지 중 상기 제1이미지들을 제외한 나머지 일부인 제2이미지들 각각이 인터프레임 인코딩되어 생성된 의존 프레임을 기록한 기록매체로서,
상기 의존 프레임 각각은,
상기 독립 프레임 중 어느 하나를 직접 참조하여 인코딩된 것을 특징으로 하는 기록매체.
An independent frame generated by intraframe encoding each of first images that are part of a plurality of images; And
A recording medium on which a dependent frame generated by interframe encoding each of second images, which is a remaining part of the plurality of images, except for the first images,
Each of the dependent frames includes:
Wherein the reference frame is encoded by directly referring to any one of the independent frames.
제7항에 기재된 기록매체에 기록된 복수의 프레임을 디코딩하기 위한 디코딩 시스템 제공방법으로서,
상기 복수의 프레임에 포함된 독립 프레임 각각을 인트라프레임 디코딩(Intra-Frame Decoding)하는 단계; 및
상기 복수의 프레임에 포함된 의존 프레임 각각에 대하여,
상기 의존 프레임이 참조하는 독립 프레임에 기초하여 상기 의존 프레임을 인터프레임 디코딩(Inter-Frame Decoding)하는 단계를 포함하는 디코딩 시스템 제공방법.
8. A method for providing a decoding system for decoding a plurality of frames recorded on a recording medium according to claim 7,
Performing Intra-Frame Decoding for each independent frame included in the plurality of frames; And
For each dependent frame included in the plurality of frames,
And interframe decoding the dependent frame based on the independent frame referenced by the dependent frame.
제1항 내지 제6항 또는 제8항 중 어느 한 항에 기재된 방법을 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
A computer-readable recording medium recording a program for carrying out the method according to any one of claims 1 to 6 or 8.
복수의 이미지를 인코딩하기 위한 인코딩 시스템으로서,
상기 복수의 이미지 중 일부인 제1이미지들 각각을 인트라프레임 인코딩(Intra-Frame Encoding)하여, 상기 제1이미지 각각에 상응하는 독립 프레임을 생성하는 인트라프레임 인코딩모듈; 및
상기 복수의 이미지 중 상기 제1이미지를 제외한 나머지 일부인 제2이미지들 각각을 인터프레임 인코딩(Inter-Frame Encoding)하여, 상기 제2이미지들 각각에 상응하는 의존 프레임을 생성하는 인터프레임 인코딩모듈을 포함하되,
상기 각각의 의존 프레임은,
상기 독립 프레임 중 어느 하나를 직접 참조하여 인코딩되는 것을 특징으로 하는 인코딩 시스템.
An encoding system for encoding a plurality of images,
An intra-frame encoding module for intra-frame encoding each of the first images, which is a part of the plurality of images, to generate independent frames corresponding to each of the first images; And
And an interframe encoding module for interframe encoding each of the second images, which is a remaining part of the plurality of images, excluding the first image, to generate a dependent frame corresponding to each of the second images However,
Each dependent frame comprising:
Wherein the encoding is performed by directly referring to any one of the independent frames.
제10항에 있어서, 상기 인트라프레임 인코딩모듈은,
상기 제1이미지에 포함된 블록들의 양자화를 수행할 때 공통적으로 이용되는 공통 양자화 테이블 및 상기 제1이미지에 포함되는 블록들 중 특정 블록에 대응되는 블록특성별 양자화 테이블을 정의하는 양자화 테이블 모듈; 및
상기 특정 블록의 특정 엘리먼트를 양자화하기 위해, 상기 특정 엘리먼트에 대응되는 상기 양자화 테이블의 제1엘리먼트의 값과 상기 양자화 테이블 모듈에 의해 정의되는 상기 특정 엘리먼트에 대응되는 상기 블록특성별 양자화 테이블의 제2엘리먼트의 값을 이용하여 연산하는 처리모듈을 포함하는 인코딩 시스템.
11. The apparatus of claim 10, wherein the intra-
A quantization table module for defining a common quantization table commonly used when quantizing the blocks included in the first image and a quantization table for each block characteristic corresponding to a specific block among the blocks included in the first image; And
And a second element of the quantization table corresponding to the block element corresponding to the specific element defined by the quantization table module, for quantizing a specific element of the specific block, And processing using the value of the element.
제10항에 있어서, 상기 인트라프레임 인코딩모듈은,
상기 제1이미지에 포함된 블록들의 양자화를 수행할 때 공통적으로 이용되는 공통 양자화 테이블 및 상기 제1이미지에 포함되는 블록들 중 특정 블록에 대응되는 블록특성별 양자화 테이블을 정의하는 양자화 테이블 모듈; 및
상기 참조 프레임에 포함되는 블록들 중 특정 블록의 양자화를 수행하면서 상기 특정 블록에 포함된 각각의 엘리먼트를 상기 양자화 테이블을 이용하여 양자화하고, 양자화된 각각의 엘리먼트들 중 적어도 일부에 대해 선택적으로 상기 각각의 엘리먼트에 대응되는 추가 압축 값을 차감하여 저장하는 처리모듈을 포함하며,
상기 추가 압축 값은,
상기 특정 블록의 특징 값에 기초하여 상기 양자화 테이블 모듈에 의해 결정된 상기 특정 블록에 대응되는 블록특성별 양자화 테이블에 기초하여 결정되는 것을 특징으로 하는 인코딩 시스템.
11. The apparatus of claim 10, wherein the intra-
A quantization table module for defining a common quantization table commonly used when quantizing the blocks included in the first image and a quantization table for each block characteristic corresponding to a specific block among the blocks included in the first image; And
Quantizing each element included in the specific block using the quantization table while performing quantization of a specific block among the blocks included in the reference frame, and selectively quantizing each of the quantized elements And a processing module for subtracting and storing an additional compressed value corresponding to the element of the element,
The further compressed value may be,
Wherein the quantization table is determined based on a quantization table for each block characteristic corresponding to the specific block determined by the quantization table module based on the characteristic value of the specific block.
제7항에 기재된 기록매체에 기록된 복수의 프레임을 디코딩하기 위한 디코딩 시스템으로서,
상기 복수의 프레임에 포함된 독립 프레임 각각을 인트라프레임 디코딩(Intra-Frame Decoding)하는 인트라프레임 디코딩모듈; 및
상기 복수의 프레임에 포함된 의존 프레임 각각에 대하여,
상기 의존 프레임이 참조하는 독립 프레임에 기초하여 상기 의존 프레임을 인터프레임 디코딩(Inter-Frame Decoding)하는 인터프레임 디코딩모듈을 포함하는 디코딩 시스템.
8. A decoding system for decoding a plurality of frames recorded on a recording medium according to claim 7,
An Intra-frame decoding module for Intra-frame decoding each independent frame included in the plurality of frames; And
For each dependent frame included in the plurality of frames,
And an interframe decoding module for interframe decoding the dependent frame based on the independent frame referenced by the dependent frame.
KR1020150088506A 2015-06-22 2015-06-22 Image encoding system, image decoding system and providing method thereof KR20150096353A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150088506A KR20150096353A (en) 2015-06-22 2015-06-22 Image encoding system, image decoding system and providing method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150088506A KR20150096353A (en) 2015-06-22 2015-06-22 Image encoding system, image decoding system and providing method thereof

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020130108558A Division KR101583870B1 (en) 2013-09-10 2013-09-10 Image encoding system, image decoding system and providing method thereof

Publications (1)

Publication Number Publication Date
KR20150096353A true KR20150096353A (en) 2015-08-24

Family

ID=54058853

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150088506A KR20150096353A (en) 2015-06-22 2015-06-22 Image encoding system, image decoding system and providing method thereof

Country Status (1)

Country Link
KR (1) KR20150096353A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190023867A (en) 2017-08-30 2019-03-08 이세희 Method to improve compression date for moving picture

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190023867A (en) 2017-08-30 2019-03-08 이세희 Method to improve compression date for moving picture

Similar Documents

Publication Publication Date Title
KR101247042B1 (en) Prediction of transform coefficients for image compression
US9414086B2 (en) Partial frame utilization in video codecs
JP4393875B2 (en) System and method for providing a single layer video encoded bitstream suitable for reduced complexity decoding
US20120128064A1 (en) Image processing device and method
KR101482896B1 (en) Optimized deblocking filters
US10085028B2 (en) Method and device for reducing a computational load in high efficiency video coding
KR20170021337A (en) Encoder decisions based on results of hash-based block matching
JPWO2008084745A1 (en) Image coding apparatus and image decoding apparatus
US20140037223A1 (en) Method and device for lossy compress-encoding data and corresponding method and device for reconstructing data
US20070237235A1 (en) Method of reducing computations in transform and scaling processes in a digital video encoder using a threshold-based approach
US11356672B2 (en) System and method for controlling video coding at frame level
US20160330468A1 (en) Image encoding device, image decoding device, encoded stream conversion device, image encoding method, and image decoding method
US9077960B2 (en) Non-zero coefficient block pattern coding
US8594189B1 (en) Apparatus and method for coding video using consistent regions and resolution scaling
US11134250B2 (en) System and method for controlling video coding within image frame
JP4574444B2 (en) Image decoding apparatus and method, image encoding apparatus and method, computer program, and storage medium
US10015484B2 (en) Adaptive scan device and method for scanning thereof
US20230269385A1 (en) Systems and methods for improving object tracking in compressed feature data in coding of multi-dimensional data
US8442338B2 (en) Visually optimized quantization
KR101583870B1 (en) Image encoding system, image decoding system and providing method thereof
US20060146183A1 (en) Image processing apparatus, encoding device, and methods of same
KR20150096353A (en) Image encoding system, image decoding system and providing method thereof
JP4942208B2 (en) Encoder
CN115567710A (en) Data encoding method and apparatus, and method and apparatus for decoding data stream
KR101533051B1 (en) Encoding method method using block quantization level based on block characteristic and system thereof

Legal Events

Date Code Title Description
A107 Divisional application of patent
WITN Withdrawal due to no request for examination