[go: up one dir, main page]

KR101603701B1 - Method and system for image decoding - Google Patents

Method and system for image decoding Download PDF

Info

Publication number
KR101603701B1
KR101603701B1 KR1020140040769A KR20140040769A KR101603701B1 KR 101603701 B1 KR101603701 B1 KR 101603701B1 KR 1020140040769 A KR1020140040769 A KR 1020140040769A KR 20140040769 A KR20140040769 A KR 20140040769A KR 101603701 B1 KR101603701 B1 KR 101603701B1
Authority
KR
South Korea
Prior art keywords
image
decoding
length
partial image
texture
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020140040769A
Other languages
Korean (ko)
Other versions
KR20150116135A (en
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 KR1020140040769A priority Critical patent/KR101603701B1/en
Publication of KR20150116135A publication Critical patent/KR20150116135A/en
Application granted granted Critical
Publication of KR101603701B1 publication Critical patent/KR101603701B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

이미지 디코딩 방법 및 그 시스템이 제공된다. 상기 이미지 디코딩 방법은 이미지 디코딩 시스템이 상기 부분 이미지의 제1방향의 제1라인을 디코딩하는 단계 및 상기 이미지 디코딩 시스템이 상기 부분 이미지의 제1라인의 디코딩 후 순차적으로 상기 제1방향의 제N(여기서, N은 2 이상의 자연수)라인까지 디코딩하는 단계를 포함하며, 상기 이미지 디코딩 시스템은 상기 부분 이미지의 제1방향의 길이에 기초하여 상기 부분 이미지의 제2방향의 길이에 상응하는 상기 N을 결정하는 것을 특징으로 한다.A method and an image decoding method are provided. Wherein the image decoding method comprises the steps of: an image decoding system decoding a first line in a first direction of the partial image; and decoding the first line of the partial image, Wherein N is a natural number greater than or equal to 2, and wherein the image decoding system determines the N corresponding to the length of the partial image in the second direction based on the length of the partial image in the first direction .

Description

이미지 디코딩 방법 및 그 시스템{Method and system for image decoding}[0001] The present invention relates to a method and system for image decoding,

본 발명은 이미지 디코딩 방법 및 그 시스템에 관한 것으로, 보다 상세하게는 이미지를 분할하여 디코딩할 수 있으면서도, 분할된 부분 이미지의 디코딩 시간을 일정하게 유지할 수 있는 방법 및 시스템에 관한 것이다. The present invention relates to an image decoding method and a system thereof, and more particularly, to a method and system capable of maintaining a decoding time of a divided partial image at a constant level while an image can be divided and decoded.

또한, 그래픽 엔진 또는 GPU의 특성에 따라 디코딩 시간을 단축시킬 수 있는 방법 및 시스템에 관한 것이다.
The present invention also relates to a method and system that can shorten the decoding time according to the characteristics of a graphics engine or a GPU.

도 1은 종래의 압축된 이미지를 디코딩하는 방법들을 도시하고 있다.Figure 1 illustrates methods for decoding conventional compressed images.

도 1a를 참조하면, 전통적인 이미지의 디코딩 방식은 이미지(10)의 단위블록(예컨대, 매크로 블록(macro bolck) 또는 MCU(Minimum Coded Unit) 등, 1, 2, 3, 또는 4) 단위로 인코딩된 데이터의 처음부터 순차적으로 디코딩을 하는 방식이다. 이러한 경우, 인코딩된 이미지 데이터(예컨대, JPEG 등)의 처음 데이터는 일반적으로 이미지의 좌측 최상단의 이미지를 나타내므로, 디코딩은 도 1a에 도시된 바와 같이 단위블록(1), 단위블록(2), 단위블록(3)을 포함하는 첫 번째 라인부터 순차적으로 수행된다. 상기 첫 번째 라인의 디코딩이 완료되면, 단위블록(4)을 포함하는 두 번째 라인 역시 이미지 데이터가 인코딩된 순서대로(예컨대, 이미지의 좌측에서 우측방향으로) 순차적으로 디코딩이 수행되게 된다. 1A, a decoding method of a conventional image is a method in which a unit block of an image 10 is encoded in units of 1, 2, 3, or 4, such as a macro block or an MCU (Minimum Coded Unit) And sequentially decodes data from the beginning of the data. In this case, since the initial data of the encoded image data (for example, JPEG, etc.) generally represents the image at the upper left of the image, the decoding is performed using the unit block 1, the unit block 2, Is sequentially performed from the first line including the unit block (3). When the decoding of the first line is completed, the second line including the unit block 4 is sequentially decoded in the order in which the image data is encoded (for example, from left to right in the image).

이러한 방식으로 인코딩된 이미지 데이터가 모두 디코딩되면, 디코딩된 정보 즉 텍스쳐(texture)는 소정의 메모리 영역(예컨대, 이미지 버퍼 또는 기타 데이터 저장장치)에 저장될 수 있다. 저장된 텍스쳐는 그래픽 엔진 또는 GPU 등과 같이 이미지 프로세싱을 수행하는 수단에 입력되고, 이에 따라 이미지는 데이터 프로세싱 장치(예컨대, 컴퓨터, 모바일 폰, 태블릿 등)의 디스플레이 장치에서 디스플레이될 수 있게 된다.Once all of the image data encoded in this way has been decoded, the decoded information, or texture, may be stored in a predetermined memory area (e.g., an image buffer or other data storage device). The stored texture is input to a means for performing image processing such as a graphics engine or a GPU so that the image can be displayed on a display device of a data processing device (e.g., a computer, mobile phone, tablet, etc.).

하지만, 인코딩된 이미지 데이터 전체 즉, 이미지 전체를 순차적으로 디코딩하는 것이 아니라, 필요에 따라 이미지의 일부분(이하, 부분 이미지)만 디코딩할 필요가 대두되었다. 예컨대, 이미지의 디코딩된 정보 즉, 텍스쳐를 저장하기 위한 저장장치(예컨대, 이미지 버퍼 등)를 소형화하기 위해서도 이미지의 일부분만 디코딩할 필요성은 존재한다. 또한, 이미지의 특정 부분만을 확대하는 등과 같이 이미지의 일부분에 대해 소정의 서비스 또는 기능을 제공하고자 할 때에도 이미지를 분할하여 디코딩할 필요성은 존재한다.However, it has become necessary to decode only a part of the image (hereinafter referred to as a partial image) as necessary, rather than sequentially decoding the entire encoded image data, that is, the entire image. For example, there is a need to decode only a portion of an image in order to downsize the decoded information of the image, i.e., the storage device (e.g., image buffer, etc.) for storing the texture. Further, there is a need to divide and decode an image even when it is desired to provide a predetermined service or function for a part of the image, such as enlarging only a specific part of the image.

이처럼 이미지를 분할하여 분할된 부분 이미지를 디코딩하는 분할 디코딩 방식은 도 1b 및 도 1c에 도시된다. A divisional decoding scheme for dividing an image and decoding the divided partial image is shown in Figs. 1B and 1C.

예컨대, 도 1b에 도시된 바와 같이 순차적으로 이미지(21)의 처음부터(예컨대, 좌측 상단부터) 가로방향으로 순차적으로 한 라인씩 이미지를 순차적으로 디코딩하여 미리 정해진 높이(h)까지의 이미지 즉, 부분 이미지(21)의 디코딩이 완료되면, 디코딩된 부분 이미지의 텍스쳐는 메모리 영역에 저장된 후 디스플레이 장치로 출력될 수 있다. 그 다음에는 상기 부분 이미지(21)의 연속된 부분 이미지(22)를 디코딩하여 상기 메모리 영역을 통해 디스플레이 장치로 출력하게 된다. 따라서 메모리 영역은 전체 이미지의 크기를 저장할 수 있을 정도로 클 필요가 없어서 하드웨어 단가를 현저히 낮출 수 있는 장점이 있다. 이러한 기술적 사상은 한국공개특허(10-2010-0121726, "압축 이미지 분할 디코딩 방법 및 분할 디코딩 디스플레이 장치")에 개시된 바 있다. For example, as shown in FIG. 1B, sequentially sequentially decodes images one by one in the horizontal direction from the beginning of the image 21 (for example, from the upper left of the image) to obtain images up to a predetermined height h, When the decoding of the partial image 21 is completed, the texture of the decoded partial image may be stored in the memory area and then output to the display device. And then decodes the successive partial image 22 of the partial image 21 and outputs it to the display device through the memory area. Therefore, the memory area does not have to be large enough to store the size of the entire image, which is advantageous in that the hardware unit cost can be remarkably reduced. This technical idea has been disclosed in Korean Patent Publication (10-2010-0121726, "Compressed Image Partition Decoding Method and Partition Decoding Display Apparatus").

하지만 이러한 종래기술은 메모리 영역(예컨대, 이미지 버퍼)의 축소에 중점을 둔 기술적 사상이어서 타임 쉐어링을 위한 솔루션(예컨대, 멀티 태스킹 등)에 부적합한 면이 있다. 즉, 상기 종래기술은 부분 이미지의 크기(21 또는 22)가 이미지(20) 전체의 형태(예컨대, 가로 폭)에 따라 결정되므로, 이미지(20)의 형태(예컨대, 가로 폭)가 다른 경우에는 항상 부분 이미지(21 또는 22)의 크기(면적)가 달라진다는 문제점이 있다. 즉, 이러한 경우에는 이미지별로 부분 이미지를 디코딩하는 시간이 달라지게 되어 타임 쉐어링에 적용되기가 어렵거나 복잡도가 매우 높아지는 문제점이 있다. 더구나 상기의 종래기술은 순차적으로 모든 부분 이미지들을 디코딩하기 위한 기술적 사상으로, 이미지 버퍼가 충분히 큰 경우에는 도 1a에서 설명한 전통적인 방식에 비해 별다른 실익이 없을 수 있다. However, this prior art technique is a technical idea that focuses on the reduction of a memory area (for example, an image buffer), which is unsuitable for a solution for time sharing (e.g., multitasking, etc.). That is, since the size (21 or 22) of the partial image is determined according to the shape (for example, the width) of the entire image 20, when the shape (e.g., width) of the image 20 is different There is a problem that the size (area) of the partial image 21 or 22 always changes. That is, in this case, the time for decoding the partial image varies depending on the image, which makes it difficult to apply to time sharing or the complexity becomes very high. In addition, the conventional technique described above is a technical idea for decoding all the partial images in sequence. If the image buffer is large enough, there is no advantage in comparison with the conventional method described in FIG. 1A.

한편, 최근에는 도 1c에 도시된 바와 같이 이미지(30)의 부분 이미지(예컨대, 31, 32)를 도 1b와 같이 이미지 전체(30)의 가로 폭 만큼 설정하는 것이 아니라, 가로 폭 역시 분할하여 디코딩하는 방식이 쓰이고 있다. 이러한 방식은 도 1b에 비해 부분 이미지를 보다 세부적으로 설정할 수 있어서 특정 부분 이미지(예컨대, 32)에 해당하는 영역만 확대하거나 축소하는 등의 서비스에 유용한 방식일 수 있다. Recently, as shown in FIG. 1C, not only the partial images (for example, 31 and 32) of the image 30 are set as long as the width of the entire image 30 as shown in FIG. 1B, Is used. This scheme can be set to a more detailed setting of the partial image as compared to FIG. 1B, so that it can be a useful method for services such as enlarging or reducing only the area corresponding to a specific partial image (for example, 32).

하지만, 이러한 경우에는 도 1c에 도시된 바와 같이 부분 이미지(예컨대, 31, 32)의 최상위 라인을 디코딩한 후, 차상위 라인을 순차적으로 디코딩하기 위해 차상위 라인의 처음위치 즉, 부분 이미지의 최좌측 단위블록(예컨대, 31-1, 또는 32-1 등)의 위치를 미리 알고 있어야 한다. 따라서 도 1c에 도시된 바와 같은 방식을 쓰기 위해서는 부분 이미지들(31, 32 등) 각각의 경계(boundary)를 알 수 있는 정보(예컨대, 최좌측 단위블록의 위치에 대한 정보(이하, 리젼 맵(region map) 이라 함))를 생성 및 저장하고 있어야 하므로 리젼 맵을 생성하는데 소요되는 시간 및 저장을 위한 리소스가 필요하다는 단점이 있기도 하다.However, in this case, as shown in FIG. 1C, after decoding the uppermost line of the partial images (for example, 31 and 32), the first position of the next higher line, that is, the leftmost unit The location of the block (e.g., 31-1, or 32-1, etc.) should be known in advance. Therefore, in order to use the scheme shown in FIG. 1C, it is necessary to use information (e.g., information on the position of the leftmost unit block (hereinafter, referred to as a region map (hereinafter referred to as " region map ")) must be generated and stored. Therefore, there is a disadvantage in that resources required for storing and storing the time required for creating the region map are required.

따라서 부분 이미지를 선택적으로 디코딩할 수 있으면서도 부분 이미지들 각각의 위치를 파악하기 위해 생성 및 저장해야 하는 정보(예컨대, 리젼 맵)를 유지하지 않거나 현저히 줄일 수 있고, 이미지의 다양한 형태에 구애되지 않고 부분 이미지의 디코딩 시간을 일정 수준으로 유지할 수 있는 기술적 사상이 요구된다.Accordingly, it is possible to selectively decode the partial image, but it is not necessary to maintain or significantly reduce the information (e.g., the region map) to be generated and stored in order to grasp the position of each of the partial images, A technical idea that can maintain the decoding time of the image at a certain level is required.

한편, 디코딩된 이미지 즉, 텍스쳐를 상응하는 이미지로 재생하는 이미지 처리수단(예컨대, 그래픽 엔진 또는 GPU(grahpic processing unit)은 특정 형태(이하, '선호 형태')의 텍스쳐(예컨대, 정사각형)를 다른 형태(예컨대, 직사각형)의 텍스쳐 보다 빨리 이미지로 재생할 수 있는 특성을 가지고 있는 경우가 존재한다. 이러한 경우, 부분 이미지를 선호 형태로 분할하여 분할 디코딩을 수행하는 경우, 이미지의 재생이 가장 효율적일 수 있다. 하지만, 이러한 경우에는 도 1c에서 설명한 바와 같이 리젼 맵을 생성하여야 하는 문제점이 발생한다. 따라서 부분 이미지를 선호 형태로 분할하지 않으면서도 효율적인 이미지 재생이 가능한 기술적 사상이 요구된다.On the other hand, image processing means (e.g., a graphics engine or a GPU (grahpic processing unit) for reproducing a decoded image, that is, a texture, as a corresponding image) may convert a texture (e.g., a square) There is a case in which the image can be reproduced more quickly than a texture of a shape (e.g., a rectangle). In this case, in the case of performing partial decoding by dividing a partial image into a preferred form, reproduction of an image may be most efficient However, in such a case, there arises a problem of generating a region map as described with reference to FIG. 1C. Therefore, a technical idea that enables efficient image reproduction without dividing a partial image into a preferred form is required.

따라서 본 발명이 이루고자 하는 기술적인 과제는 이미지의 형태에 무관하게 부분 이미지의 디코딩 시간을 일정 수준으로 유지할 수 있는 디코딩 방법 및 시스템을 제공하는 것이다.SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a decoding method and system capable of maintaining a decoding time of a partial image at a predetermined level regardless of the type of an image.

또한, 부분 이미지의 제1방향(예컨대, 가로)의 크기를 전체 이미지의 상기 제1방향(예컨대, 가로)의 크기로 설정하는 경우에는, 리젼 맵을 별도로 생성하지 않을 수 있는 디코딩 방법 및 시스템을 제공하는 것이다.In addition, when a size of a first direction (e.g., horizontal) of a partial image is set to a size of the first direction (e.g., horizontal) of the entire image, a decoding method and system .

또한, 리젼 맵을 생성 및 유지하더라도 부분 이미지의 형태를 다양하게 설정할 수 있는 디코딩 방법 및 시스템을 제공하는 것이다.It is another object of the present invention to provide a decoding method and system that can set various types of partial images even if a region map is generated and maintained.

또한, 그래픽 엔진 또는 GPU에서의 이미지 처리 속도를 높이기 위해 부분 이미지를 미리 선호 형태(예컨대, 정사각형)로 분할하지 않더라도 효율적인 재생이 가능할 수 있는 방법 및 시스템을 제공하는 것이다.
It is also an object of the present invention to provide a method and system that can efficiently reproduce a partial image without dividing the partial image into a preferred format (e.g., a square) in advance to increase the image processing speed in the graphic engine or the GPU.

상기의 기술적 과제를 해결하기 위한 이미지에 포함되는 부분 이미지를 디코딩하는 방법은 이미지 디코딩 시스템이 상기 부분 이미지의 제1방향의 제1라인을 디코딩하는 단계 및 상기 이미지 디코딩 시스템이 상기 부분 이미지의 제1라인의 디코딩 후 순차적으로 상기 제1방향의 제N(여기서, N은 2 이상의 자연수)라인까지 디코딩하는 단계를 포함하며, 상기 이미지 디코딩 시스템은 상기 부분 이미지의 제1방향의 길이에 기초하여 상기 부분 이미지의 제2방향의 길이에 상응하는 상기 N을 결정하는 것을 특징으로 한다.According to another aspect of the present invention, there is provided a method of decoding a partial image, the method comprising: an image decoding system decoding a first line in a first direction of the partial image; (N is an integer greater than or equal to 2) lines of the first direction after decoding the line, wherein the image decoding system is further configured to decode the portion of the partial image based on the length of the partial image in the first direction And determines the N corresponding to the length of the image in the second direction.

상기 이미지 디코딩 시스템은 상기 부분 이미지의 제1방향의 길이에 반비례하도록 상기 부분 이미지의 제2방향의 길이를 결정하는 것을 특징으로 할 수 있다.The image decoding system may determine the length of the partial image in the second direction to be in inverse proportion to the length of the partial image in the first direction.

상기 부분 이미지는 상기 제1방향의 길이가 상기 이미지의 제1방향의 길이와 동일한 것을 특징으로 할 수 있다.The partial image may have a length in the first direction equal to a length in the first direction of the image.

상기 이미지 디코딩 방법은 상기 이미지 디코딩 시스템이 상기 부분 이미지의 디코딩된 정보인 텍스쳐를 저장할, 미리 설정된 형태를 갖는 복수의 메모리 영역들을 설정하는 단계를 더 포함하며, 상기 제1방향의 제1라인을 디코딩하는 단계 또는 상기 제1방향의 제N(여기서, N은 2 이상의 자연수)라인까지 디코딩하는 단계는 상기 이미지 디코딩 시스템이 상기 텍스쳐(texture)를 상기 복수의 메모리 영역에 분할하여 기입하는 단계를 포함할 수 있다.Wherein the image decoding method further comprises the step of setting a plurality of memory areas having a predetermined form in which the image decoding system stores the texture which is the decoded information of the partial image, (N is a natural number greater than or equal to 2) lines in the first direction includes the step of the image decoding system dividing and writing the texture into the plurality of memory areas .

상기 이미지 디코딩 시스템이 상기 텍스쳐를 상기 복수의 메모리 영역에 분할하여 기입하는 단계는 상기 텍스쳐를 제1메모리 영역의 상기 제1방향의 길이까지 순차적으로 기입한 후, 상기 텍스쳐의 나머지 부분은 상기 제1메모리 영역에 연속되는 제2메모리 영역에 연속하여 기입하는 것을 특징으로 할 수 있다.Wherein the step of dividing and writing the texture into the plurality of memory areas sequentially writes the texture to the length of the first direction of the first memory area, And continuously writes data in a second memory area continuous to the memory area.

상기 이미지 디코딩 방법은 상기 이미지 디코딩 시스템이 상기 제N라인의 마지막 디코딩이 수행된 단위블록 위치에 상응하는 위치정보를 저장하는 단계, 상기 이미지 디코딩 시스템이 상기 이미지에 대해 디코딩을 재개하는 경우, 저장된 위치정보에 기초하여 상기 이미지에 포함되며 상기 부분 이미지와 연속된 제2부분 이미지를 디코딩하는 단계를 더 포함할 수 있다.The image decoding method comprising the steps of: the image decoding system storing position information corresponding to a unit block position at which the last decoding of the Nth line was performed; when the image decoding system resumes decoding on the image, And decoding the second partial image included in the image based on the information and continuing with the partial image.

상기 이미지 디코딩 방법은 상기 이미지 디코딩 시스템이 사용자로부터 입력된 선택위치에 대한 정보를 수신하는 단계 및 상기 이미지 디코딩 시스템이 수신된 상기 선택위치에 상응하는 상기 부분 이미지를 특정하는 단계를 더 포함할 수 있다.The image decoding method may further comprise the step of the image decoding system receiving information about a selected position input from a user and specifying the partial image corresponding to the selected position at which the image decoding system is received .

상기 기술적 과제를 해결하기 위한 이미지 디코딩 방법은 이미지 디코딩 시스템이 제1이미지의 제1부분 이미지-상기 제1부분 이미지는 제1방향으로는 상기 제1이미지와 동일한 제1길이를 갖고, 제2방향으로는 상기 제1길이에 기초하여 결정되는 제2길이를 가짐-를 디코딩하는 단계 및 상기 이미지 디코딩 시스템이 상기 제2이미지의 제2부분 이미지-상기 제2부분 이미지는 상기 제1방향으로는 상기 제2이미지와 동일한 제3길이를 갖고, 상기 제2방향으로는 상기 제3길이에 기초하여 결정되는 제4길이를 가짐-를 디코딩하는 단계를 포함하며, 상기 이미지 디코딩 시스템은 상기 제1길이와 상기 제3길이가 서로 다른 경우에도, 상기 제1부분 이미지의 면적과 상기 제2부분 이미지의 면적이 동일하거나 일정 범위내의 차이를 갖도록 상기 제2길이 및 상기 제4길이를 결정하는 것을 특징으로 한다.The image decoding method for solving the technical problem is characterized in that the image decoding system has a first partial image of the first image, the first partial image has a first length equal to the first image in the first direction, Having a second length determined based on the first length, and the image decoding system comprises a second partial image of the second image, the second partial image having a second length determined based on the first length, Having a third length equal to the second image, and a fourth length determined based on the third length in the second direction, the image decoding system having a first length and a second length, The second length and the fourth length are set such that the area of the first partial image and the area of the second partial image are the same or have a difference within a certain range, Characterized in that the crystal.

상기 기술적 과제를 해결하기 위한 이미지 디코딩 방법은 이미지 디코딩 시스템이 이미지의 디코딩된 정보인 텍스쳐를 저장할 미리 설정된 형태를 갖는 복수의 메모리 영역들을 설정하는 단계, 상기 이미지 디코딩 시스템이 상기 이미지의 제1방향의 특정 라인을 디코딩하는 단계, 및 상기 이미지 디코딩 시스템이 상기 특정 라인의 디코딩된 정보인 텍스쳐를 상기 복수의 메모리 영역에 분할하여 기입하는 단계를 포함할 수 있다. According to an aspect of the present invention, there is provided an image decoding method, comprising: setting a plurality of memory areas having a predetermined format for storing a texture which is decoded information of an image; Decoding the specific line, and writing the texture, which is the decoded information of the specific line, into the plurality of memory areas by the image decoding system.

상기 이미지 디코딩 방법은 프로그램을 기록한 컴퓨터 판독 가능한 기록매체에 저장될 수 있다. The image decoding method may be stored in a computer-readable recording medium on which the program is recorded.

상기 기술적 과제를 해결하기 위한 이미지 디코딩 시스템은 부분 이미지의 제1방향의 제1라인에서 상기 제1방향의 제N(여기서, N은 2 이상의 자연수)라인까지 순차적으로 디코딩을 수행하는 디코딩 모듈 및 상기 부분 이미지를 특정하여 상기 디코딩 모듈이 상기 부분 이미지를 디코딩하도록 제어하는 제어모듈을 포함하며, 상기 제어모듈은 상기 부분 이미지의 제1방향의 길이에 기초하여 상기 부분 이미지의 제2방향의 길이에 상응하는 상기 N을 결정하는 것을 특징으로 한다.According to another aspect of the present invention, there is provided an image decoding system comprising: a decoding module that sequentially performs decoding from a first line in a first direction of a partial image to an Nth line in a first direction (where N is a natural number of 2 or more) And a control module for controlling the decoding module to decode the partial image by specifying a partial image, the control module corresponding to the length of the partial image in the second direction based on the length of the partial image in the first direction And the N is determined.

상기 제어모듈은 상기 부분 이미지의 제1방향의 길이에 반비례하도록 상기 부분 이미지의 제2방향의 길이를 결정하는 것을 특징으로 할 수 있다.The control module may determine the length of the partial image in the second direction to be in inverse proportion to the length of the partial image in the first direction.

상기 이미지 디코딩 시스템은 상기 부분 이미지의 상기 제1방향의 길이를 판단하여 상기 제어모듈로 출력하기 위한 판단모듈을 더 포함할 수 있다.The image decoding system may further include a determination module for determining the length of the partial image in the first direction and outputting the determined length to the control module.

상기 제어모듈은 상기 부분 이미지의 특정 라인의 디코딩된 정보인 텍스쳐를 저장할 미리 설정된 형태를 갖는 복수의 메모리 영역들을 설정하며, 상기 디코딩 모듈은 상기 텍스쳐(texture)를 상기 복수의 메모리 영역에 분할하여 기입하는 단계를 포함할 수 있다.Wherein the control module sets a plurality of memory areas having a predetermined shape for storing a texture which is decoded information of a specific line of the partial image, and the decoding module divides the texture into the plurality of memory areas, .

상기 디코딩 모듈은 상기 텍스쳐를 제1메모리 영역의 상기 제1방향의 길이까지 순차적으로 기입한 후, 상기 텍스쳐의 나머지 부분을 상기 제1메모리 영역에 연속되는 제2메모리 영역에 연속하여 기입하는 것을 특징으로 할 수 있다.The decoding module sequentially writes the texture to a length of the first direction of the first memory area and then writes the remaining portion of the texture to the second memory area continuous to the first memory area in succession .

상기 제어모듈은 상기 제N라인의 마지막 디코딩이 수행된 단위블록의 위치에 상응하는 위치정보를 저장하고, 상기 이미지에 대해 디코딩이 재개되는 경우, 저장된 위치정보에 기초하여 상기 이미지에 포함되며 상기 부분 이미지와 연속된 제2부분 이미지를 디코딩하도록 상기 디코딩 모듈을 제어할 수 있다.Wherein the control module stores position information corresponding to a position of a unit block in which the last decoding of the Nth line is performed, and when the decoding is resumed for the image, the control module is included in the image based on the stored position information, And control the decoding module to decode the second partial image that is continuous with the image.

상기 이미지 디코딩 시스템은 사용자로부터 입력된 선택위치에 대한 정보를 수신하기 위한 인터페이스 모듈을 더 포함하며, 상기 제어모듈은 수신된 상기 선택위치에 상응하는 상기 부분 이미지를 특정할 수 있다.The image decoding system may further include an interface module for receiving information on a selected position input from a user, and the control module may specify the partial image corresponding to the received selected position.

상기 기술적 과제를 해결하기 위한 이미지 디코딩 시스템은 이미지의 디코딩을 수행하는 디코딩 모듈 및 상기 디코딩 모듈을 제어하기 위한 제어모듈을 포함하며, 상기 제어모듈은 상기 이미지의 디코딩된 정보인 텍스쳐를 저장할 미리 설정된 형태를 갖는 복수의 메모리 영역들을 설정하고, 상기 디코딩 모듈은 상기 이미지의 제1방향의 특정 라인을 디코딩하면서, 상기 특정 라인에 상응하는 텍스쳐를 상기 복수의 메모리 영역에 분할하여 기입하는 것을 특징으로 한다.
According to an aspect of the present invention, there is provided an image decoding system including a decoding module for decoding an image and a control module for controlling the decoding module, And the decoding module divides a texture corresponding to the specific line into the plurality of memory areas while decoding the specific line in the first direction of the image and writes the divided texture.

본 발명의 기술적 사상에 따르면 디코딩할 이미지의 형태에 무관하게 부분 이미지를 동일 또는 유사한 면적으로 설정할 수 있으므로, 디코딩 시간을 일정 수준으로 유지할 수 있어 타임 쉐어링 솔루션(또는 서비스)에 적용하기 적합한 효과가 있다. According to the technical idea of the present invention, the partial images can be set to the same or similar areas irrespective of the type of the image to be decoded, so that the decoding time can be maintained at a certain level, which is suitable for application to a time sharing solution .

또한, 구현 예에 따라 리젼 맵을 생성하지 않거나 매우 작은 정보의 저장만으로도, 부분 이미지를 순차적으로 또는 선택적으로 디코딩할 수 있는 효과가 있다. Also, according to the embodiment, there is an effect that the partial image can be sequentially or selectively decoded even if the region map is not generated or only very small information is stored.

또한, 리젼 맵을 생성 및 유지하더라도 부분 이미지의 형태를 실시간으로 다양하게 설정할 수 있는 효과가 있다.Also, even if a region map is generated and maintained, the shape of the partial image can be set variously in real time.

또한, 이러한 경우 이미지 재생수단(예컨대, 그래픽 엔진 또는 GPU 등)이 효율적으로 이미지 재생을 할 수 있는 선호 형태를 가지지 않도록 부분 이미지가 설정될 수 있는데, 이러한 경우에도 미리 부분 이미지의 텍스쳐가 저장되는 메모리 영역을 복수 개의 상기 선호 형태를 갖는 영역으로 할당하고, 복수 개의 메모리 영역에 분할하여 텍스쳐를 저장함으로써 효율적인 이미지 재생이 가능한 효과가 있다.
Also, in this case, the partial image may be set so that the image reproducing means (e.g., a graphics engine or a GPU or the like) does not have a preference form capable of efficient image reproduction. In this case, There is an effect that an image can be efficiently reproduced by allocating an area to an area having a plurality of the preference forms and dividing the area into a plurality of memory areas to store a texture.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 종래의 압축된 이미지를 디코딩하는 방법들을 도시하고 있다.
도 2는 본 발명의 기술적 사상에 따른 디코딩 방법을 개념적으로 도시하고 있는 도면이다.
도 3은 본 발명의 기술적 사상에 따른 복수의 메모리 영역을 이용해 텍스쳐를 분할하여 저장할 수 있는 개념을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 이미지 디코딩 시스템 개략적인 구성을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 이미지 디코딩 방법을 개략적으로 나타내는 플로우 챠트이다.
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.
Figure 1 illustrates methods for decoding conventional compressed images.
2 is a conceptual diagram illustrating a decoding method according to the technical idea of the present invention.
FIG. 3 is a view for explaining a concept of dividing and storing a texture using a plurality of memory areas according to the technical idea of the present invention.
4 is a diagram showing a schematic configuration of an image decoding system according to an embodiment of the present invention.
5 is a flow chart schematically showing an image decoding method 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.

도 2는 본 발명의 기술적 사상에 따른 디코딩 방법을 개념적으로 도시하고 있는 도면이다.2 is a conceptual diagram illustrating a decoding method according to the technical idea of the present invention.

도 2a 내지 도 2e를 참조하면, 본 발명의 기술적 사상에 따른 이미지 디코딩 방법은 디코딩할 이미지(예컨대, 40, 50, 60, 70, 80)의 부분 이미지(예컨대, 41, 51, 61, 71, 81, 91)를 디코딩할 수 있다. 2A to 2E, an image decoding method according to the technical idea of the present invention includes a partial image (for example, 41, 51, 61, 71, 81, 91).

본 발명의 기술적 사상을 구현하기 위한 이미지 디코딩 시스템은 소정의 인코딩된 이미지 데이터를 입력 값으로 수신하고, 상기 이미지의 일부분인 부분 이미지를 특정할 수 있다. An image decoding system for implementing the technical idea of the present invention can receive predetermined encoded image data as an input value and specify a partial image which is a part of the image.

이때 상기 이미지 디코딩 시스템은 부분 이미지의 크기(또는 면적)을 일정하게 유지할 수 있다. 부분 이미지의 크기를 일정하게 유지한다고 함은, 어떠한 이미지가 입력되더라도(즉, 다양한 형태를 갖는 이미지가 입력되더라도), 입력된 이미지의 부분 이미지는 동일한 크기 또는 미리 설정된 범위 내의 크기 차이를 갖도록 설정됨을 의미할 수 있다. 이를 위해 상기 이미지 디코딩 시스템은 상기 부분 이미지의 어느 한 방향의 길이에 기초하여 다른 방향의 길이를 적응적으로 조절할 수 있다. At this time, the image decoding system can keep the size (or area) of the partial image constant. Keeping the size of the partial image constant means that the partial image of the input image is set to have the same size or a size difference within a predetermined range regardless of which image is input (i.e., even if an image having various shapes is input) It can mean. To this end, the image decoding system may adaptively adjust the length in the other direction based on the length in either direction of the partial image.

따라서 본 발명의 기술적 사상에 의하면, 다양한 형태 및/또는 크기를 갖는 이미지가 이미지 디코딩 시스템에 입력되더라도 입력된 이미지의 부분 이미지의 디코딩 시간은 동일하거나 일정 범위 내로 설정될 수 있다. 따라서 상기 이미지 디코딩 시스템이 설치되는 데이터 프로세싱 장치가 타임 쉐어링을 수행하는 경우, 정확한 타임 스케줄의 예측이 가능한 효과가 있다.Therefore, according to the technical idea of the present invention, even when an image having various shapes and / or sizes is input to the image decoding system, the decoding time of the partial image of the input image can be set to the same or within a certain range. Therefore, when the data processing apparatus in which the image decoding system is installed performs time sharing, an accurate time schedule can be predicted.

또한, 본 발명의 기술적 사상에 의하면 상기 이미지 디코딩 시스템은 전체 이미지의 제1방향(예컨대, 가로)의 크기(길이)와 동일한 크기(길이)를 갖도록 부분 이미지를 설정할 수 있다. 이때 상기 제1방향은 이미지 데이터 즉, 인코딩된 데이터의 인코딩 순서에 의해 결정될 수 있다. According to the technical idea of the present invention, the image decoding system can set the partial image to have the same size (length) as the size (length) of the first direction (e.g., width) of the entire image. In this case, the first direction may be determined by the encoding order of the image data, that is, the encoded data.

예컨대, 이미지(예컨대, 40, 50)의 인코딩된 데이터가 이미지의 좌측상단부터 제1방향(예컨대, 가로방향) 순으로 인코딩된 데이터인 경우, 상기 이미지 디코딩 시스템은 도 2a 및 도 2b에 도시된 바와 같이 부분 이미지(예컨대, 41, 51)의 제1방향(가로방향)의 크기(길이)는 상기 부분 이미지에 상응하는 이미지 전체(예컨대, 40, 50)의 크기와 동일하도록 설정될 수 있다. 즉, 부분 이미지(예컨대, 41, 51)는 이미지(40, 50)를 제2방향(예컨대, 세로방향)으로 소정의 길이만큼 분할한 이미지일 수 있다. 예컨대, JPEG 등의 이미지 파일은 도 2a 및 도 2b에 도시된 바와 같이 가로방향 순으로 인코딩이 되므로, 상기 이미지 디코딩 시스템은 도 2a 및 도 2b에 도시된 바와 같이 부분 이미지를 설정할 수 있다. For example, if the encoded data of the image (e.g., 40, 50) is encoded data in order from the upper left of the image to the first direction (e.g., the horizontal direction) The size (length) of the partial images (for example, 41 and 51) in the first direction (horizontal direction) can be set to be equal to the size of the entire image (for example, 40 and 50) corresponding to the partial image. That is, the partial images (e.g., 41 and 51) may be images obtained by dividing the images 40 and 50 by a predetermined length in the second direction (e.g., the longitudinal direction). For example, an image file such as JPEG is encoded in the horizontal direction as shown in FIGS. 2A and 2B, so that the image decoding system can set a partial image as shown in FIGS. 2A and 2B.

다른 실시 예에 의하면, 이미지(예컨대, 60, 70)의 인코딩된 데이터가 이미지의 좌측상단부터 제1방향(예컨대, 세로방향) 순으로 인코딩된 데이터인 경우, 상기 이미지 디코딩 시스템은 도 2c 및 도 2d에 도시된 바와 같이 부분 이미지(예컨대, 61, 71)의 제1방향(세로방향)의 크기는 상기 부분 이미지에 상응하는 이미지 전체(예컨대, 40, 50)의 크기(길이)와 동일하도록 설정될 수 있다. 즉, 부분 이미지(예컨대, 61, 71)는 이미지(60, 70)를 제2방향(예컨대, 가로방향)으로 소정의 길이만큼 분할한 이미지일 수 있다. According to another embodiment, if the encoded data of an image (e.g., 60, 70) is encoded data in order from the top left of the image to the first direction (e.g., longitudinal) The size of the partial image (e.g., 61, 71) in the first direction (vertical direction) is set to be equal to the size (length) of the entire image (e.g., 40, 50) . That is, the partial image (e.g., 61, 71) may be an image obtained by dividing the image 60, 70 by a predetermined length in the second direction (e.g., the horizontal direction).

이처럼 부분 이미지(예컨대, 41, 51 또는 61, 71)의 제1방향(예컨대, 가로방향 또는 세로방향)의 크기를 이미지(예컨대, 40, 50, 60, 70)의 크기와 동일하게 설정하는 경우에는, 전술한 바와 같이 리젼 맵에 대한 정보를 생성 및/또는 저장할 필요가 없거나 매우 적은 양의 정보만을 생성 및/또는 저장할 수 있는 효과가 있다.When the size of the partial image (for example, 41, 51 or 61, 71) in the first direction (for example, the horizontal direction or the vertical direction) is set equal to the size of the image (for example, 40, 50, 60, 70) There is an effect that it is not necessary to generate and / or store information on the region map, as described above, or only a very small amount of information can be generated and / or stored.

상기 이미지 디코딩 시스템은 상기 제2방향의 길이를 상기 이미지의 형태에 따라 적응적으로 결정할 수 있다. 상기 제2방향의 길이는 디코딩의 단위가 되는 단위블록(예컨대, 매크로 블록 단위 또는 MCU)의 개수 즉, 제1방향의 라인의 개수에 의해 결정될 수 있다.The image decoding system may adaptively determine the length of the second direction according to the shape of the image. The length in the second direction may be determined by the number of unit blocks (for example, macroblock units or MCUs), that is, the number of lines in the first direction, which is a decoding unit.

그리고 상기 이미지 디코딩 시스템은 상기 부분 이미지의 제1방향의 길이에 따라 상기 제2방향의 길이를 적응적으로 결정함으로써, 전술한 바와 같이 디코딩할 전체 이미지의 형태 및/또는 크기와 무관하게 동일한 크기의 부분 이미지를 설정할 수 있다. And the image decoding system adaptively determines the length of the second direction in accordance with the length of the partial image in the first direction so that the size of the partial image having the same size regardless of the shape and / A partial image can be set.

이를 위해 상기 제2방향의 길이는 부분 이미지의 제1방향의 길이와 반비례하게 설정될 수 있다. To this end, the length of the second direction may be set in inverse proportion to the length of the partial image in the first direction.

예컨대, 상기 이미지 디코딩 시스템은 도 2a에 도시된 바와 같은 이미지(40)에 대해 부분 이미지(41)를 설정하기 위해, 상기 부분 이미지(41)의 제1방향(예컨대, 가로)의 길이(w1)를 판단하고, 판단된 상기 제1방향(예컨대, 가로)의 길이(w1)에 따라 상기 부분 이미지(41)의 제2방향(예컨대, 세로)의 길이(h1)를 결정할 수 있다. For example, the image decoding system may determine the length w1 of the first direction (e.g., horizontal) of the partial image 41 to set the partial image 41 for the image 40 as shown in Fig. And determines the length h1 of the second direction (e.g., length) of the partial image 41 according to the determined length w1 of the first direction (e.g., width).

만약 상기 이미지 디코딩 시스템은 도 2b에 도시된 바와 같은 이미지(50)가 입력되면 상기 이미지(50)의 부분 이미지(51)를 설정하기 위해, 상기 부분 이미지(51)의 제1방향(예컨대, 가로)의 길이(w2)를 판단하고, 판단된 상기 제1방향(예컨대, 가로)의 길이(w2)에 따라 상기 부분 이미지(51)의 제2방향(예컨대, 세로)의 길이(h2)를 결정할 수 있다. If the image decoding system is adapted to set a partial image 51 of the image 50 in the first direction of the partial image 51 in order to set the partial image 51 of the image 50, And determines the length h2 of the second direction (e.g., length) of the partial image 51 according to the determined length w2 of the first direction (e.g., width) .

그리고 상기 이미지 디코딩 시스템은 상기 부분 이미지(41) 및 상기 부분 이미지(51)의 크기가 일정할 수 있도록 상기 부분 이미지(41) 및 상기 부분 이미지(51)의 제2방향의 길이(h1, h2)를 결정할 수 있다.The image decoding system may further include a length calculating unit for calculating a length (h1, h2) of the partial image (41) and the partial image (51) in the second direction so that the size of the partial image (41) Can be determined.

만약, 이미지가 세로방향 순으로 인코딩 된 경우라면, 상기 이미지 디코딩 시스템은 입력되는 이미지(예컨대, 60, 70)의 부분 이미지(예컨대, 61, 71)를 설정하기 위해, 상기 부분 이미지(예컨대, 61, 71)의 제1방향(예컨대, 세로방향)의 길이(h3)를 상기 이미지(예컨대, 60, 70)의 제1방향(예컨대, 세로방향)의 길이(h3)로 설정할 수 있다. 그리고 상기 부분 이미지(예컨대, 61, 71)의 제2방향(예컨대, 가로방향)의 길이(w3, w4)는 각각의 제1방향(예컨대, 세로방향)의 길이(h3, h4)의 기초하여 적응적으로 결정할 수 있다. If the images are encoded in longitudinal order, the image decoding system may use the partial image (e.g., 61, 71) to set a partial image (e.g., 61, 71) The length h3 in the first direction (e.g., the longitudinal direction) of the image (e.g., 60, 70) And the lengths w3 and w4 in the second direction (e.g., the horizontal direction) of the partial images (e.g., 61 and 71) are calculated based on the lengths h3 and h4 in the respective first directions It can be determined adaptively.

상기 이미지 디코딩 시스템은 설정된 부분 이미지에 대하여, 인코딩된 순으로 순차적으로 디코딩을 수행할 수 있다. 예컨대, 도 2a 및 도 2b에서는 부분 이미지(예컨대, 41, 51)의 좌측최상단에 상응하는 단위블록부터 순차적으로 가로방향으로 디코딩을 수행할 수 있으며, 어느 한 라인의 디코딩이 완료되면 다음 라인을 디코딩할 수 있다. 또는 도 2c 및 도 2d에 도시된 바와 같이 부분 이미지(예컨대, 61, 71)의 좌측 최상단에 상응하는 단위블록부터 순차적으로 세로방향으로 디코딩을 수행할 수 있으며, 어느 한 라인의 디코딩이 완료되면 다음 라인을 디코딩할 수 있다. 각각의 단위 블록이 디코딩되면 디코딩된 데이터 즉, 텍스쳐는 소정의 메모리 영역에 저장될 수 있다. 상기 텍스쳐가 저장되는 상기 메모리 영역은 예컨대, 상기 이미지 디코딩 시스템이 구현되는 데이터 프로세싱 장치(예컨대, 컴퓨터, 서버, 모바일 폰 등)에 구비되며, 데이터가 저장될 수 있는 모든 형태의 데이터 저장수단(예컨대, 하드디스크, GPU의 저장수단, USIM 칩의 저장수단 등)에 할당될 수 있다. 상기 메모리 영역에 대해서는 도 3에서 상세히 후술하도록 한다.The image decoding system may sequentially perform decoding on the set partial image in the order of encoding. For example, in FIGS. 2A and 2B, it is possible to sequentially perform decoding in a horizontal direction from a unit block corresponding to the uppermost left of partial images (for example, 41 and 51). When decoding of one line is completed, can do. Alternatively, as shown in FIGS. 2C and 2D, decoding can be sequentially performed in the vertical direction from the unit block corresponding to the upper left end of the partial image (for example, 61 and 71). When decoding of one line is completed, The line can be decoded. When each unit block is decoded, the decoded data, that is, the texture, may be stored in a predetermined memory area. The memory area in which the texture is stored may be provided in a data processing device (e.g., a computer, a server, a mobile phone, etc.) in which the image decoding system is implemented and may include any type of data storage means , Hard disk, storage means of the GPU, storage means of the USIM chip, etc.). The memory area will be described in detail later with reference to FIG.

한편, 본 발명의 기술적 사상은 도 1c에서 전술한 바와 같이 이미지의 제1방향 길이 및 제2방향 길이 모두가 분할된 부분 이미지에 대해서도 적용가능할 수 있다. 물론, 이때에는 각각의 부분 이미지의 위치를 나타낼 수 있는 위치 정보인 리젼 맵(region map)이 생성 및/또는 유지되어야 할 수 있다. The technical idea of the present invention may also be applied to a partial image in which both the first direction length and the second direction length of the image are divided as described above with reference to FIG. 1C. Of course, at this time, a region map, which is position information indicating the position of each partial image, may be generated and / or maintained.

하지만, 이러한 경우에도 본 발명의 기술적 사상에 의하면, 종래에는 각각의 부분 이미지들 모두가 동일한 형태(예컨대, 가로길이 및 세로길이가 각각 동일한 직사각형)를 가져야 했음에 반해, 일정한 크기를 유지하면서 서로 다른 형태를 갖는 부분 이미지가 설정될 수 있게 된다. 예컨대, 도 2e에 도시된 바와 같이 소정의 이미지(80)가 입력된 경우, 상기 이미지 디코딩 시스템은 제1부분 이미지(81)에 대해서는 제1방향(예컨대, 가로)으로 제1길이(w5)를 갖고 제2방향(예컨대, 세로)으로 제2길이(h5)를 갖도록 설정하고, 제2부분 이미지(82)에 대해서는 제1방향(예컨대, 가로)으로 제1길이(w6)를 갖고 제2방향(예컨대, 세로)으로 제2길이(h6)를 갖도록 설정할 수 있다. 물론, 사용자의 입력(예컨대, 터치의 종류나 스와이프 방향 등) 또는 이미지 디코딩 시스템이 제공할 기능에 따라 어떠한 형태를 갖는 부분 이미지로 설정할지가 적응적으로 결정될 수도 있다. 구현 예에 따라서는, 상기 이미지(80)를 동일한 크기와 형태의 단위 부분 이미지로 구분하고, 사용자의 입력(예컨대, 터치의 종류나 스와이프 방향 등) 또는 이미지 디코딩 시스템이 제공할 기능에 따라 한 번에 디코딩될 부분 이미지의 형태를 적응적으로 변경하여 결정할 수도 있다. 물론, 이때에는 상기 부분 이미지에 포함된 단위 부분 이미지의 개수는 동일하게 설정될 수 있다. However, even in such a case, according to the technical idea of the present invention, conventionally, each of the partial images must have the same shape (for example, a rectangle having the same width and the same length) A partial image having a shape can be set. For example, when a predetermined image 80 is input, as shown in FIG. 2E, the image decoding system may generate a first length w5 in a first direction (e.g., horizontal) for the first partial image 81 And the second partial image 82 is set to have a first length w6 in a first direction (e.g., horizontal) and a second length h5 in a second direction (e.g., (E.g., length) and a second length h6. Of course, it may be adaptively determined which type of partial image is to be set according to a user's input (for example, type of touch or swipe direction) or function to be provided by the image decoding system. According to an embodiment, the image 80 may be divided into unit partial images of the same size and shape, and may be classified according to the user's input (e.g., type of touch or swipe direction) It is also possible to adaptively change the type of partial image to be decoded. Of course, at this time, the number of unit partial images included in the partial image may be set to be the same.

한편 이미지 재생수단(예컨대, 그래픽 엔진 또는 GPU)는 특정 형태의 이미지(또는 부분 이미지)를 보다 빠른 속도로 효율적으로 이미지로 재생할 수 있는 특성을 가질 수 있다. 예컨대, 널리 실시되고 있는 OpenGL기반의 이미지 재생수단은 정사각형 형태의 텍스쳐를 보다 빨리 재생할 수 있도록 설계되는 특성을 가지고 있다. 이처럼 이미지 재생수단에 따라 보다 효율적으로 이미지가 재생될 수 있는 이미지(또는 부분 이미지)의 형태가 존재할 수 있는데, 이러한 형태를 본 명세서에서는 선호 형태라고 정의하기로 한다. 상기 선호 형태는 이미지 재생수단의 실시 예에 따라 다양할 수 있음은 물론이다.On the other hand, the image reproducing means (for example, a graphics engine or a GPU) can have a characteristic of being able to efficiently reproduce an image (or a partial image) of a specific type at a higher speed and more efficiently. For example, the widely used OpenGL-based image playback means has a characteristic of being designed to reproduce a square-shaped texture more quickly. In this way, there may be a form of an image (or a partial image) in which an image can be reproduced more efficiently according to the image reproducing means, and this form will be defined as a preferred form in this specification. It goes without saying that the preference form may vary according to the embodiment of the image reproducing means.

일반적으로 이미지 디코딩 시스템은 이러한 이미지 재생수단의 선호 형태(예컨대, 정사각형)에 따라 부분 이미지를 설정할 수 있다. 하지만 본 발명의 기술적 사상에 의하면 전술한 바와 같이 부분 이미지의 형태는 적응적으로 결정될 수 있어서, 부분 이미지 및 상기 부분 이미지의 텍스쳐는 선호 형태가 아닐 수 있다. 이러한 경우에도 본 발명의 기술적 사상에 의하면, 메모리 영역을 선호 형태로 복수 개 할당하고, 할당된 복수 개의 상기 메모리 영역에 텍스쳐를 분할하여 저장함으로써 이미지 재생수단에서 효율적인 이미지 재생이 가능하도록 하는 기술적 사상을 제공할 수 있다.In general, an image decoding system may set a partial image according to the preferred form (e.g., square) of such image reproducing means. However, according to the technical idea of the present invention, the shape of the partial image can be determined adaptively as described above, so that the partial image and the texture of the partial image may not be in a preferred form. Even in such a case, according to the technical idea of the present invention, a plurality of memory areas are allocated in a preferred form, and a texture is divided and stored in a plurality of allocated memory areas, thereby enabling efficient image reproduction by the image reproducing device .

이러한 일 예는 도 3을 참조하여 설명하도록 한다.Such an example will be described with reference to FIG.

도 3은 본 발명의 기술적 사상에 따른 복수의 메모리 영역을 이용해 텍스쳐를 분할하여 저장할 수 있는 개념을 설명하기 위한 도면이다.FIG. 3 is a view for explaining a concept of dividing and storing a texture using a plurality of memory areas according to the technical idea of the present invention.

도 3에서는 특정 이미지 재생수단의 선호 형태가 정사각형인 경우를 일 예로 설명하지만, 상기 선호 형태는 이미지 재생수단의 구현 예에 따라 다양할 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.In FIG. 3, it is assumed that the preferred form of the specific image reproducing means is a square. However, it is to be understood that the preference form may vary according to the embodiment of the image reproducing means. It will be possible.

우선, 도 3a를 참조하면, 본 발명의 기술적 사상에 따라 설정된 부분 이미지(41)는 도 3a와 같을 수 있다. 상기 부분 이미지(41)는 본 발명의 기술적 사상에 의해 설정된 이미지의 일부일 수 있으며, 전술한 바와 같이 특정 이미지 재생수단의 선호 형태(예컨대, 정사각형)가 아닐 수 있다. 이러한 경우, 이미지 디코딩 시스템이 상기 부분 이미지(41)의 텍스쳐를 생성하고, 생성된 텍스쳐를 임의의 메모리 영역에 그대로 저장하면 상기 텍스쳐의 형태 역시 도 3a의 형태를 가지게 되며, 상기 특정 이미지 재생수단에서는 선호 형태가 아닌 텍스쳐를 재생하는데 시간이 오래 걸리거나, 구현 예에 따라서는 선호 형태가 아닌 텍스쳐가 아예 재생이 되지 않을 수도 있다. 3A, a partial image 41 set according to the technical idea of the present invention may be as shown in FIG. 3A. The partial image 41 may be part of the image set according to the technical idea of the present invention, and may not be the preferred form (for example, square) of the specific image reproducing means as described above. In this case, if the image decoding system generates the texture of the partial image 41 and stores the generated texture in an arbitrary memory area, the shape of the texture also has the shape of FIG. 3A, It may take a long time to reproduce a texture that is not a preference type, or a texture that is not a preference type may not be reproduced at all depending on an implementation.

이를 위해 본 발명의 기술적 사상에 따른 이미지 디코딩 시스템은 도 3b와 같이 복수의 메모리 영역들(예컨대, 91, 92, 93, 94)을 할당할 수 있다. 상기 복수의 메모리 영역들(예컨대, 91, 92, 93, 94) 각각은 상기 특정 이미지 재생수단의 선호 형태(예컨대, 정사각형)를 갖도록 할당될 수 있다. To this end, the image decoding system according to the technical idea of the present invention can allocate a plurality of memory areas (for example, 91, 92, 93, 94) as shown in FIG. Each of the plurality of memory areas (for example, 91, 92, 93, and 94) may be allocated to have a preferred form (for example, a square) of the specific image reproducing means.

그러면 상기 이미지 디코딩 시스템은 부분 이미지(41)의 디코딩을 수행해나가면서, 디코딩되는 텍스쳐를 상기 복수의 메모리 영역들(예컨대, 91, 92, 93, 94)에 분할하여 저장할 수 있다. The image decoding system may then divide and store the texture to be decoded in the plurality of memory areas (e.g., 91, 92, 93, 94) while performing decoding of the partial image 41. [

예컨대, 상기 이미지 디코딩 시스템은 도 3a에 도시된 바와 같은 부분 이미지(41)의 특정 라인(예컨대, 제1라인, 41-1)을 제1방향(예컨대, 가로방향)으로 순차적으로 디코딩할 수 있다. 이러한 경우, 상기 이미지 디코딩 시스템은 제1메모리 영역(예컨대, 91)의 특정 라인(예컨대, 제1라인, 41-1-1)에 디코딩된 텍스쳐를 순차적으로 저장(기입)해나갈 수 있다. 그리고 상기 부분 이미지(41)의 상기 특정 라인(예컨대, 41-1)의 텍스쳐를 상기 제1메모리 영역(예컨대, 91)의 특정 라인(예컨대, 41-1-1)에 순차적으로 기입한 후, 상기 제1메모리 영역(예컨대, 91)의 제1방향의 길이만큼 모두 기입이 되면, 상기 이미지 디코딩 시스템은 상기 제1메모리 영역(예컨대, 91)과 연속된 제2메모리 영역(예컨대, 92)의 특정 라인(예컨대, 제1라인, 41-1-2)에 연속하여 상기 특정 라인(예컨대, 41-1)의 텍스쳐를 연속하여 기입할 수 있다. 그리고 제2메모리 영역(예컨대, 92)의 제1방향 길이만큼 기입이 되면, 제2메모리 영역(예컨대, 92)과 연속된 제3메모리 영역(예컨대, 93)에 상기 특정 라인(예컨대, 41-1)의 텍스쳐를 연속하여 기입할 수 있다. 이와 같은 방법으로 마지막 메모리 영역인 제4메모리 영역(예컨대, 94)까지 상기 특정 라인(예컨대, 41-1)의 텍스쳐가 기입될 수 있다. For example, the image decoding system may sequentially decode a specific line (e.g., the first line, 41-1) of the partial image 41 as shown in FIG. 3A in a first direction . In this case, the image decoding system may sequentially store (write) the decoded texture onto a specific line (e.g., first line, 41-1-1) of the first memory area (e.g., 91). Then, the texture of the specific line (for example, 41-1) of the partial image 41 is sequentially written to a specific line (for example, 41-1-1) of the first memory area (for example, 91) (E.g., 91), the image decoding system may determine that the second memory area (e.g., 91) is contiguous with the first memory area (e.g., 91) The texture of the specific line (for example, 41-1) can be successively written in succession to a specific line (e.g., the first line 41-1-2). (E.g., 41-) to a third memory area (e.g., 93) that is contiguous with the second memory area (e.g., 92) when it is written by the first direction length of the second memory area 1) can be written consecutively. In this way, the texture of the particular line (e.g., 41-1) can be written to the fourth memory area (e.g., 94), which is the last memory area.

이후 상기 이미지 디코딩 시스템은 상기 부분 이미지(41)의 다음 라인(예컨대, 제2라인, 41-2)를 제1방향으로 순차적으로 디코딩할 수 있다. 그러면, 상기 이미지 디코딩 시스템은 상기 제1메모리 영역(예컨대, 91)의 다음 라인(예컨대, 제2라인, 41-2-1)부터 상기 다음 라인(예컨대, 41-2)의 텍스쳐를 순차적으로 기입해나갈 수 있다. 그리고 제1메모리 영역(예컨대, 91)의 제1방향의 길이만큼 기입이 완료되면, 제2메모리 영역(예컨대, 92)의 다음 라인(예컨대, 제2라인, 41-2-2)에 상기 다음 라인(예컨대, 41-2)의 텍스쳐를 연속하여 기입할 수 있다. 이와 같은 방식으로 상기 다음 라인(예컨대, 41-2)의 텍스쳐는 제3메모리 영역(예컨대, 93)의 다음 라인(예컨대, 41-2-3) 및 제4메모리 영역(예컨대, 94)의 다음 라인(예컨대, 41-2-4)까지 순차적으로 기입될 수 있다. The image decoding system may then sequentially decode the next line (e.g., the second line, 41-2) of the partial image 41 in the first direction. The image decoding system then sequentially writes the texture of the next line (e.g., 41-2) from the next line (e.g., second line, 41-2-1) of the first memory area (e.g., 91) I can go on. When writing is completed by the length of the first direction of the first memory area (e.g., 91), the next line (e.g., second line, 41-2-2) of the second memory area The textures of lines (e.g., 41-2) can be written consecutively. In this manner, the texture of the next line (e.g., 41-2) is next to the next line (e.g., 41-2-3) of the third memory area (e.g., 93) Line (e.g., 41-2-4).

이와 같은 방식으로 상기 이미지 디코딩 시스템은 이미지 재생수단의 선호 형태(예컨대, 정사각형)를 갖는 복수의 메모리 영역들(예컨대, 91, 92, 93, 94)에 분할하여 상기 부분 이미지(예컨대, 41)의 텍스쳐를 기입할 수 있다. 그러면 상기 이미지 디코딩 시스템은 상기 복수의 메모리 영역들(예컨대, 91, 92, 93, 94) 각각을 순차적으로 상기 이미지 재생수단에 전송(또는 업로드)할 수 있다. 따라서 상기 이미지 재생수단은 항상 선호 형태의 텍스쳐를 입력받을 수 있다. In this manner, the image decoding system is divided into a plurality of memory areas (e.g., 91, 92, 93, 94) having a preferred form (e.g., square) Textures can be written. Then, the image decoding system can sequentially transmit (or upload) each of the plurality of memory areas (e.g., 91, 92, 93, 94) to the image reproducing means in sequence. Therefore, the image reproducing means can always receive the texture of the preferred form.

이처럼 복수의 메모리 영역들(예컨대, 91, 92, 93, 94)에 분할하여 이미지의 텍스쳐를 기입하고, 복수의 메모리 영역들(예컨대, 91, 92, 93, 94) 각각을 이미지 재생수단에 전송(또는 업로드)할 경우에 부분 이미지(예컨대, 41)의 형태와 무관하게 효율적인 이미지 재생이 수행될 수 있는 효과가 있다. 그리고 이러한 방식이 부분 이미지(예컨대, 41)의 텍스쳐 전체를 저장할 수 있는 메모리 영역을 할당하고, 이를 이미지 재생수단에 전송(또는 업로드)하거나, 텍스쳐 전체가 저장된 메모리 영역에 일단 텍스쳐 전체를 기입한 후 선호 형태로 잘라서 이미지 재생수단에 전송(또는 업로드)하는 것에 비해 훨씬 빠른 속도로 이미지 처리가 가능한 효과가 있다. (For example, 91, 92, 93, and 94) to write a texture of an image and transmit each of a plurality of memory areas (e.g., 91, 92, 93, and 94) There is an effect that efficient image reproduction can be performed irrespective of the form of the partial image (for example, 41) in the case of (or uploading). Then, this method allocates a memory area capable of storing the whole texture of the partial image (for example, 41), and transmits (or uploads) a memory area to the image reproducing device, or writes the entire texture once in the memory area where the entire texture is stored There is an effect that image processing can be performed at a much higher speed than that of cutting out the image in the preferred form and transmitting (or uploading) the image to the image reproducing means.

상기 복수의 메모리 영역들(예컨대, 91, 92, 93, 94)의 서로 연속된 메모리 영역(예컨대, 91 및 92, 92 및 93 등)이라 함은, 물리적으로 서로 연속된 데이터 영역으로 할당되는 것일 필요는 없음을 본 발명의 기술적 분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다. The memory areas (for example, 91 and 92, 92 and 93, etc.) which are contiguous to each other of the plurality of memory areas (for example, 91, 92, 93 and 94) It will be readily apparent to one of ordinary skill in the art to which the present invention is directed.

또한, 이처럼 복수의 메모리 영역들(예컨대, 91, 92, 93, 94)에 텍스쳐를 분할하여 기입하고, 메모리 영역별로 이미지 재생수단에 전송(또는 업로드)하는 기술적 사상은 특정 이미지의 부분 이미지를 디코딩하고 재생할 때에 이용될 수 있을 뿐만 아니라 상기 특정 이미지 전체를 디코딩 및 재생할 때에도 이용될 수 있음은 물론이다.The technical idea of dividing and writing the texture into a plurality of memory areas (for example, 91, 92, 93, 94) and transferring (or uploading) the image to the image reproducing means for each memory area is a method for decoding And it is also possible to use it when decoding and reproducing the entire specific image.

상술한 바와 같은 본 발명의 기술적 사상을 구현하기 위한 이미지 디코딩 시스템의 개략적인 구성은 도 4에 도시된다.A schematic configuration of an image decoding system for implementing the technical idea of the present invention as described above is shown in FIG.

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

도 3을 참조하면, 본 발명의 일 실시예에 따른 이미지 디코딩 시스템(100)은 제어모듈(110) 및 디코딩 모듈(120)을 포함한다. 상기 이미지 디코딩 시스템(100)은 판단모듈(130) 및/또는 인터페이스 모듈(150)을 더 포함할 수 있다. 또한, 상기 이미지 디코딩 시스템(100)은 저장모듈(140)을 더 포함할 수도 있다. Referring to FIG. 3, an image decoding system 100 according to an exemplary embodiment of the present invention includes a control module 110 and a decoding module 120. The image decoding system 100 may further include a determination module 130 and / or an interface module 150. In addition, the image decoding system 100 may further include a storage module 140.

상기 이미지 디코딩 시스템(100)은 소정의 데이터 프로세싱 장치(예컨대, 컴퓨터, 모바일 단말기 등)에 설치되어, 상기 데이터 프로세싱 장치에 구비된 하드웨어 및 본 발명의 기술적 사상을 구현하도록 정의되는 소정의 소프트웨어 코드와 유기적으로 결합되는 구성을 의미할 수 있다.The image decoding system 100 is installed in a predetermined data processing device (e.g., a computer, a mobile terminal, etc.), and includes predetermined software codes defined to implement the hardware included in the data processing device and the technical idea of the present invention May refer to an organically bonded configuration.

본 명세서에서 '모듈'이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 '모듈'은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스(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 refer to a logical unit of a predetermined code and a hardware resource for executing the predetermined code, 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.

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

상기 제어모듈(110)은 상기 이미지 디코딩 시스템(100)의 다른 구성(예컨대, 상기 디코딩 모듈(120), 판단모듈(130), 인터페이스 모듈(150), 및/또는 저장모듈(140) 드)들의 기능 및/또는 리소스를 제어할 수 있다. The control module 110 may be configured to control other components of the image decoding system 100 such as the decoding module 120, the determination module 130, the interface module 150, and / Functions and / or resources.

상기 디코딩 모듈(120)은 외부(예컨대, 상기 이미지 디코딩 시스템(100)이 설치된 데이터 프로세싱 장치)로부터 입력되는 이미지를 디코딩할 수 있다. 이를 위해 상기 디코딩 모듈(120)은 역허프만 변환수단, 역양자화수단, 인버스 DCT(Discrete Cosine Transform) 수단 등을 구비할 수 있음은 물론이다. 또한, 상기 디코딩 모듈(120)은 이미지 또는 부분 이미지를 디코딩하고, 디코딩된 정보 즉, 텍스쳐를 본 발명의 기술적 사상에 따른 메모리 영역에 기입할 수 있다. The decoding module 120 may decode an image input from the outside (e.g., a data processing device in which the image decoding system 100 is installed). For this, the decoding module 120 may include an inverse Huffman transformation unit, an inverse quantization unit, an inverse DCT (Discrete Cosine Transform) unit, and the like. In addition, the decoding module 120 may decode an image or a partial image, and write the decoded information, i.e., a texture, into the memory area according to the technical idea of the present invention.

상기 제어모듈(110)은 소정의 이미지가 입력되면, 상기 이미지에 포함되는 부분 이미지를 설정할 수 있다. 상기 제어모듈(110)은 상기 이미지 전체를 복수 개의 부분 이미지로 미리 구분할 수도 있고, 필요에 따라 어느 하나의 부분 이미지만을 설정할 수도 있다. 부분 이미지를 설정한다고 함은, 상기 부분 이미지의 크기 및/또는 형태를 설정함을 의미할 수 있다. 이를 위해 상기 제어모듈(110)은 상기 부분 이미지의 어느 한 방향(예컨대, 가로방향 또는 세로방향)의 길이를 설정할 수 있다. 그리고 나머지 한 방향(예컨대, 세로방향 또는 가로방향)의 길이는 미리 결정되어 있을 수 있다. 물론, 구현 예에 따라서는(예컨대, 도 2e에 도시된 바와 같이) 두 방향의 길이를 모두 설정함으로써 부분 이미지를 설정할 수도 있다. The control module 110 may set a partial image included in the image when a predetermined image is input. The control module 110 may divide the entire image into a plurality of partial images, and may set only one partial image if necessary. Setting the partial image may mean setting the size and / or shape of the partial image. To this end, the control module 110 may set a length in either one direction (e.g., horizontal or vertical direction) of the partial image. And the length of the remaining one direction (e.g., longitudinal direction or lateral direction) may be predetermined. Of course, depending on the implementation, the partial image may be set by setting both lengths in both directions (e.g., as shown in Figure 2E).

또한, 상기 제어모듈(110)은 도 3에서 설명한 바와 같이 디코딩 모듈(120)에 의해 생성되는 텍스쳐가 저장될 메모리 영역을 할당할 수 있다. 상기 메모리 영역은 상기 이미지 디코딩 시스템(100)이 구현되는 데이터 처리장치에 구비된 데이터 저장수단 중에서 선택적으로 할당될 수 있다. 그리고 상기 제어모듈(110)은 소정의 형태 즉, 선호 형태(예컨대, 정사각형)를 갖는 복수의 메모리 영역들을 할당할 수 있다. 그러면 상기 디코딩 모듈(120)은 상기 복수의 메모리 영역들에 텍스쳐를 분할하여 기입할 수 있다.Also, the control module 110 may allocate a memory area in which the texture generated by the decoding module 120 is stored, as described with reference to FIG. The memory region may be selectively allocated among data storage means included in the data processing apparatus in which the image decoding system 100 is implemented. The control module 110 may allocate a plurality of memory areas having a predetermined shape (e.g., a square). Then, the decoding module 120 may divide and write the texture into the plurality of memory areas.

한편, 도 2a 또는 도 2b에 도시된 바와 같이, 상기 제어모듈(110)은 상기 이미지를 어느 한 방향(예컨대, 세로방향)에 대해서만 분할한 형태의 부분 이미지(예컨대, 도 2a 또는 도2b의 41, 51)를 설정할 수도 있고, 양방향 모두에 대해서 분할한 형태의 부분 이미지(예컨대, 도 2e)를 설정할 수도 있다. 2A or 2B, the control module 110 may divide the image into a partial image in which the image is divided in only one direction (for example, the longitudinal direction) (for example, 41 , 51), or may set a partial image (e.g., Fig. 2e) in a divided form for both directions.

도 2a 및 도 2b와 도 2c 및 도 2d는 디코딩의 진행방향이 가로방향 인지 세로방향인지 여부의 차이만 있으므로, 이하에서는 도 2a 및 도 2b와 도 3을 위주로 설명하도록 한다. 2A and 2B and FIGS. 2C and 2D differ only in the direction in which the decoding is proceeded in the horizontal direction or in the vertical direction, and therefore, the following description will focus on FIGS. 2A, 2B, and 3. FIG.

부분 이미지가 설정되면, 도 2a 또는 도 2b에 도시된 바와 같이 상기 제어모듈(110)은 설정된 부분 이미지에 대해 디코딩을 수행하도록 상기 디코딩 모듈(120)을 제어할 수 있다. 상기 디코딩 모듈(120)은 부분 이미지의 제1방향(예컨대, 가로방향)의 제1라인에서 상기 제1방향의 제N(여기서, N은 2 이상의 자연수)라인까지 순차적으로 디코딩을 수행할 수 있다. 디코딩의 수행결과 획득되는 텍스쳐는 상기 제어모듈(110)에 의해 할당된 복수의 메모리 영역들에 순차적으로 분할하여 기입될 수 있다. 여기서 상기 라인은 상기 디코딩 모듈(120)이 디코딩을 수행하는 단위인 단위블록을 하나만 포함하는 행 또는 열을 의미할 수 있다.When the partial image is set, the control module 110 may control the decoding module 120 to perform decoding on the set partial image, as shown in FIG. 2A or 2B. The decoding module 120 may sequentially perform decoding from the first line in the first direction (e.g., the horizontal direction) of the partial image to the Nth line in the first direction (where N is a natural number of 2 or more) . The texture obtained as a result of decoding may be sequentially divided into a plurality of memory areas allocated by the control module 110 and written. Here, the line may denote a row or a column including only one unit block, which is a unit in which the decoding module 120 performs decoding.

물론, 상기 N은 전술한 바와 같이 상기 제어모듈(110)에 의해 결정되며, 상기 제1방향(예컨대, 가로방향)의 길이에 기초하여 결정되는 제2방향(예컨대, 세로방향)의 길이에 상응하도록 결정되는 수일 수 있다. 그리고 상기 제어모듈(110)은 상기 부분 이미지를 일정한 크기(면적)로 설정하기 위해 상기 제1방향의 길이와 반비례하도록 상기 제2방향의 길이 즉, 상기 N을 결정할 수 있다. Of course, the N is determined by the control module 110 as described above, and corresponds to a length in a second direction (e.g., longitudinal direction) determined based on the length in the first direction Lt; / RTI > The control module 110 may determine the length N of the second direction to be in inverse proportion to the length of the first direction to set the partial image to a predetermined size (area).

일실시 예에 의하면, 상기 제어모듈(110)은 상기 부분 이미지의 제1방향(예컨대, 가로방향)의 길이를 상기 이미지의 제1방향의 길이와 동일하게 설정할 수도 있다. 이러한 경우, 상기 제어모듈(110)은 상기 판단모듈(130)로부터 상기 이미지의 제1방향(예컨대, 가로방향)의 길이(예컨대, 폭(width))에 대한 정보를 수신할 수 있다. According to one embodiment, the control module 110 may set the length of the partial image in the first direction (e.g., the horizontal direction) to be equal to the length of the image in the first direction. In this case, the control module 110 may receive information on the length (e.g., width) in the first direction (e.g., the horizontal direction) of the image from the determination module 130.

상기 판단모듈(130)은 입력되는 이미지의 인코딩 데이터에 기초하여 상기 이미지의 제1방향(예컨대, 가로방향)의 길이를 판단할 수 있다. 예컨대, 상기 이미지가 JPEG 인코딩 이미지인 경우, 상기 판단모듈(130)은 상기 JPEG 인코딩 파일의 헤더에 포함된 상기 이미지의 폭 또는 높이의 정보를 추출하여 상기 제어모듈(110)로 출력할 수 있다. 그러면, 상기 제어모듈(110)은 상기 이미지의 제1방향(예컨대, 가로방향)의 길이(예컨대, 폭)에 기초하여 부분 이미지의 제2방향(예컨대, 세로방향)의 길이를 결정할 수 있다. The determination module 130 may determine the length of the image in the first direction (e.g., the horizontal direction) based on the encoded data of the input image. For example, if the image is a JPEG-encoded image, the determination module 130 may extract information on the width or height of the image included in the header of the JPEG-encoded file and output the information to the control module 110. The control module 110 may then determine the length of the partial image in the second direction (e.g., the longitudinal direction) based on the length (e.g., width) in the first direction (e.g., the horizontal direction) of the image.

상기 디코딩 모듈(120)에 의해 상기 이미지에 포함된 어느 하나의 부분 이미지(예컨대, 41 또는 51)의 디코딩이 완료되면, 상기 디코딩 모듈(120)은 디코딩된 부분 이미지의 텍스쳐를 전술한 바와 같은 복수의 메모리 영역에 분할하여 기입할 수 있다. 그리고 복수의 메모리 영역에 기입된 텍스쳐는 메모리 영역별로 이미지 재생수단에 구비된 이미지 버퍼로 전송될 수 있다. 구현 예에 따라서는, 상기 복수의 메모리 영역이 상기 이미지 버퍼에 할당될 수도 있음은 물론이다.When the decoding module 120 completes decoding of any one partial image (e.g., 41 or 51) included in the image, the decoding module 120 converts the texture of the decoded partial image into a plurality of It is possible to divide and write in the memory area of FIG. The textures written in the plurality of memory areas may be transferred to the image buffer provided in the image reproducing device for each memory area. According to an embodiment, the plurality of memory areas may be allocated to the image buffer.

구현 예에 따라서는 상기 이미지 디코딩 시스템(100)이 설치된 데이터 프로세싱 장치에 의해 타 프로세스가 수행될 수도 있다. 즉, 타임 쉐어링이 수행될 수도 있다. 그 후 상기 디코딩 모듈(120)은 이미 디코딩이 완료된 부분 이미지(예컨대, 41 또는 51)의 연속된 부분 이미지(예컨대, 42 또는 52)의 디코딩을 수행할 수 있다.  Depending on the implementation, other processes may be performed by the data processing device in which the image decoding system 100 is installed. That is, time sharing may be performed. The decoding module 120 may then perform decoding of a contiguous partial image (e.g., 42 or 52) of a partial image (e.g., 41 or 51) that has already been decoded.

이를 위해 상기 제어모듈(110)은 상기 부분 이미지(예컨대, 41 또는 51)의 디코딩이 완료되면, 완료된 위치 즉, 상기 부분 이미지(예컨대, 41 또는 51)의 마지막 단위블록에 상응하는 위치정보를 저장할 수 있다. 그리고 상기 이미지에 대해 디코딩이 재개되는 경우, 저장된 위치정보에 기초하여 상기 이미지에 포함되며 상기 부분 이미지(예컨대, 41 또는 51)와 연속된 제2부분 이미지(예컨대, 42 또는 52)를 디코딩하도록 상기 디코딩 모듈(120)을 제어할 수 있다.The control module 110 stores the position information corresponding to the last unit block of the partial image (for example, 41 or 51) when the decoding of the partial image (for example, 41 or 51) is completed . And to decode a second partial image (e.g., 42 or 52) that is included in the image and is contiguous with the partial image (e.g., 41 or 51) based on the stored position information when decoding is resumed for the image The decoding module 120 can be controlled.

물론, 상기 디코딩 모듈(120)은 반드시 상기 부분 이미지(예컨대, 41 또는 51) 즉, 상기 이미지의 최상단(또는 최좌측) 부분 이미지를 먼저 디코딩해야 할 필요는 없다. 구현 예에 따라서는 제2부분 이미지(예컨대, 42 또는 52)를 먼저 디코딩하는 경우도 존재할 수 있다. Of course, the decoding module 120 need not necessarily decode the partial image (e.g., 41 or 51), i.e., the top (or leftmost) partial image of the image. Depending on the implementation, there may be a case where the second partial image (e.g., 42 or 52) is first decoded.

예컨대, 사용자가 이미지의 썸네일 중 상기 제2부분 이미지(예컨대, 42 또는 52)에 해당하는 영역을 선택(예컨대, 마우스 또는 터치에 의해)하는 경우, 상기 제2부분 이미지(예컨대, 42 또는 52)가 먼저 디코딩이 될 수도 있다. 이러한 경우, 상기 인터페이스 모듈(150)은 사용자로부터 입력된 선택위치에 대한 정보를 수신할 수 있다. 그러면, 상기 제어모듈(110)은 수신된 상기 선택위치에 상응하는 부분 이미지 즉, 상기 제2부분 이미지(예컨대, 42 또는 52)를 먼저 특정(설정)할 수도 있다. 이러한 경우 상기 제어모듈(110)은 미리 판단한 상기 제2방향(예컨대, 세로방향)의 길이(예컨대, h1 또는 h2)의 길이에 기초하여 상기 선택위치를 포함하는 부분 이미지의 시작 단위블록의 위치 및/또는 마지막 단위블록의 위치를 실시간으로 판단할 수도 있다. 물론, 구현 예에 따라서는 미리 상기 이미지를 복수의 부분 이미지로 분할하고, 분할된 각각의 부분 이미지의 시작 단위블록의 위치 및/또는 마지막 단위블록의 위치를 저장해둠으로써 빠른 시간 내에 상기 선택위치에 상응하는 부분 이미지를 특정할 수도 있다. For example, if the user selects (e.g., by mouse or touch) an area corresponding to the second partial image (e.g., 42 or 52) of the thumbnails of the image, the second partial image (e.g., 42 or 52) May be decoded first. In this case, the interface module 150 may receive information on the selected position input from the user. Then, the control module 110 may first (specify) a partial image corresponding to the received selected position, i.e., the second partial image (e.g., 42 or 52). In this case, the control module 110 determines the position of the starting unit block of the partial image including the selected position based on the length of the predetermined second direction (e.g., longitudinal direction) (e.g., h1 or h2) / Or the position of the last unit block in real time. Of course, according to an embodiment, by storing the position of the starting unit block and / or the position of the last unit block of each divided partial image in advance, the image is divided into a plurality of partial images in advance, The corresponding partial image may be specified.

어떠한 경우든 부분 이미지의 어느 하나의 제1방향(예컨대, 가로 또는 세로)의 길이가 상기 부분 이미지를 포함하는 이미지의 상기 제1방향(예컨대, 가로 또는 세로)의 길이와 동일하도록 설정되는 경우, 그리고 상기 제1방향이 인코딩된 이미지 데이터의 인코딩 순서와 동일한 경우), 상기 부분 이미지를 설정하기 위한 위치정보는 부분 이미지의 시작 단위블록 및/또는 마지막 단위블록의 위치만 포함되면 족하다.In any case, if the length of any one of the partial images in the first direction (e.g., horizontal or vertical) is set equal to the length of the first direction (e.g., horizontal or vertical) of the image containing the partial image, And the first direction is the same as the encoding order of the encoded image data), the position information for setting the partial image may include only the position of the starting unit block and / or the last unit block of the partial image.

한편, 도 2e 도시된 바와 같이 부분 이미지(예컨대, 81 또는 82)의 제1방향 및 제2방향이 모두 상기 부분 이미지를 포함하는 이미지(80)와 동일하지 않은 경우에도, 상기 제어모듈(110)은 어느 하나의 제1방향의 길이(예컨대, w5, w6)이 결정되면 결정된 상기 제1방향의 길이(예컨대, w5, w6)에 기초하여 상기 제2방향의 길이(예컨대, h5, h6)를 결정할 수 있다. 이때에도 전술한 바와 같이 제2방향의 길이는 제1방향의 길이에 반비례하도록 설정될 수 있다. 물론, 각각의 부분 이미지(예컨대, 81 또는 82)의 크기가 동일하도록 상기 제2방향의 길이(예컨대, h5, h6)가 적응적으로 결정될 수도 있다. 상기 제1방향의 길이는 사용자에 의해 입력되는 선택신호의 종류에 따라 또는 상기 이미지 디코딩 시스템(100)이 제공하는 기능에 따라 미리 정해진 규칙에 의해 결정될 수 있다. 물론, 이러한 실시 예에서는 각각의 부분 이미지별로 리젼 맵을 생성 및/또는 유지하여야 할 수 있다. 하지만, 도 1c에서 설명한 종래의 기술에 비해 다양한 형태의 부분 이미지를 제공할 수 있는 효과는 존재할 수 있다.On the other hand, even if the first direction and the second direction of the partial image (e.g., 81 or 82) are not the same as the image 80 including the partial image as shown in FIG. 2E, (E.g., h5, h6) based on the length of the first direction (e.g., w5, w6) determined when the length in any one first direction (e.g., w5, w6) You can decide. At this time, the length of the second direction may be set to be inversely proportional to the length of the first direction, as described above. Of course, the lengths (e.g., h5, h6) of the second direction may be adaptively determined so that the size of each partial image (e.g., 81 or 82) is the same. The length of the first direction may be determined according to a type of a selection signal input by a user or according to a predetermined rule according to a function provided by the image decoding system 100. Of course, in this embodiment it may be necessary to create and / or maintain a region map for each partial image. However, there may be an effect of providing various types of partial images as compared with the conventional technique described in FIG. 1C.

상기 저장모듈(140)은 상기 이미지 디코딩 시스템(100)으로 입력되는 이미지 데이터를 저장할 수 있다. The storage module 140 may store image data input to the image decoding system 100.

도 5는 본 발명의 일 실시 예에 따른 이미지 디코딩 방법을 개략적으로 나타내는 플로우 챠트이다.5 is a flow chart schematically showing an image decoding method according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 기술적 사상에 따른 이미지 디코딩 방법을 위해 이미지 디코딩 시스템(100)이 부분 이미지의 제1방향 길이(예컨대, 폭)를 판단할 수 있다(S100). 상기 부분 이미지는 이미지의 최상단(또는 최좌측) 부분 이미지일 수도 있고, 사용자의 선택신호에 따라 결정되는 부분 이미지일 수도 있다. 이를 위해서 상기 이미지 디코딩 시스템(100)은 사용자로부터 입력된 선택신호에 상응하는 선택위치를 수신할 수도 있다(S110-1). 선택위치를 수신하는 과정은 상기 부분 이미지가 설정되는 과정 전이면, 상기 과정(S100) 또는 상기 과정(S110) 전에 수행될 수도 있다. Referring to FIG. 5, the image decoding system 100 may determine a first directional length (e.g., width) of a partial image for an image decoding method according to the technical idea of the present invention (S100). The partial image may be an uppermost (or leftmost) partial image of the image or a partial image determined according to a user's selection signal. For this, the image decoding system 100 may receive a selection position corresponding to a selection signal input from a user (S110-1). The process of receiving the selection position may be performed before the process of setting the partial image, before the process of S100 or S110.

상기 부분 이미지의 제1방향의 길이(예컨대, 폭)는 전술한 바와 같이 이미지의 제1방향의 길이(예컨대, 폭)일 수도 있다. 이처럼 상기 부분 이미지의 제1방향의 길이(예컨대, 폭)가 결정되면, 상기 이미지 디코딩 시스템(100)은 상기 부분 이미지의 제2방향의 길이(예컨대, 높이)를 상기 제1방향의 길이(예컨대, 폭)에 기초하여 결정할 수 있다(S110). 그러면 상기 이미지 디코딩 시스템(100)은 설정된 부분 이미지의 시작위치(첫 단위블록)부터 순차적으로 디코딩을 수행할 수 있다(S120).The length (e.g., width) of the partial image in the first direction may be the length (e.g., width) in the first direction of the image as described above. If the length (e.g., width) of the partial image in the first direction is determined as described above, the image decoding system 100 determines the length of the partial image in the second direction (e.g., height) , Width) (S110). Then, the image decoding system 100 can sequentially perform decoding from the start position (first unit block) of the set partial image (S120).

상기 이미지 디코딩 시스템(100)은 디코딩이 완료된 부분 이미지의 마지막 단위블록의 위치에 상응하는 위치정보를 저장할 수 있으며(S130), 이후 상기 이미지 디코딩 시스템(100)이 설치된 데이터 프로세싱 장치는 타임 쉐어링을 위해 타 프로세스를 수행할 수도 있다. 그리고 다시 상기 이미지를 디코딩하기 위해 저장된 상기 위치정보에 기초하여 상기 부분 이미지와 연속된 다음 부분 이미지를 디코딩할 수도 있다(S140). The image decoding system 100 may store position information corresponding to the position of the last unit block of the decoded partial image at step S130 and thereafter the data processing apparatus provided with the image decoding system 100 may perform a time- Other processes may be performed. And decode the next partial image contiguous with the partial image based on the positional information stored for decoding the image again (S140).

본 발명의 실시 예에 따른 이미지 디코딩 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The image decoding method 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 (18)

이미지에 포함되는 부분 이미지를 디코딩하는 이미지 디코딩 방법에 있어서,
이미지 디코딩 시스템이 상기 부분 이미지의 제1방향의 제1라인을 디코딩하는 단계; 및
상기 이미지 디코딩 시스템이 상기 부분 이미지의 제1라인의 디코딩 후 순차적으로 상기 제1방향의 제N(여기서, N은 2 이상의 자연수)라인까지 디코딩하는 단계를 포함하며,
상기 이미지 디코딩 시스템은,
상기 부분 이미지의 제1방향의 길이에 기초하여 상기 부분 이미지의 제2방향의 길이에 상응하는 상기 N을 결정하는 것을 특징으로 하며,
상기 이미지 디코딩 방법은,
상기 이미지 디코딩 시스템이 상기 부분 이미지의 디코딩된 정보인 텍스쳐를 저장할, 미리 설정된 형태를 갖는 복수의 메모리 영역들을 설정하는 단계를 더 포함하며,
상기 제1방향의 제1라인을 디코딩하는 단계 또는 상기 제1방향의 제N(여기서, N은 2 이상의 자연수)라인까지 디코딩하는 단계는,
상기 이미지 디코딩 시스템이 상기 텍스쳐를 상기 복수의 메모리 영역에 분할하여 기입하는 단계를 포함하는 이미지 디코딩 방법.
An image decoding method for decoding a partial image included in an image,
The image decoding system decoding the first line in the first direction of the partial image; And
Wherein the image decoding system sequentially decodes N-th (where N is a natural number greater than 2) lines in the first direction after decoding the first line of the partial image,
The image decoding system comprising:
And determines the N corresponding to the length of the partial image in the second direction based on the length of the partial image in the first direction,
The image decoding method includes:
The image decoding system further comprising the step of setting a plurality of memory areas having a predetermined form for storing a texture which is decoded information of the partial image,
The decoding of the first line in the first direction or the decoding of the Nth line in the first direction (where N is a natural number of 2 or more)
Wherein the image decoding system divides and writes the texture into the plurality of memory areas.
삭제delete 삭제delete 삭제delete 제1항에 있어서, 상기 이미지 디코딩 시스템이 상기 텍스쳐를 상기 복수의 메모리 영역에 분할하여 기입하는 단계는,
상기 텍스쳐를 제1메모리 영역의 상기 제1방향의 길이까지 순차적으로 기입한 후, 상기 텍스쳐의 나머지 부분은 상기 제1메모리 영역에 연속되는 제2메모리 영역에 연속하여 기입하는 것을 특징으로 하는 이미지 디코딩 방법.
The method of claim 1, wherein the image decoding system divides and writes the texture into the plurality of memory areas,
Characterized in that the texture is sequentially written to the length of the first direction of the first memory area and then the remaining part of the texture is continuously written to the second memory area continuous to the first memory area Way.
삭제delete 삭제delete 이미지 디코딩 시스템이 제1이미지의 제1부분 이미지-상기 제1부분 이미지는 제1방향으로는 상기 제1이미지와 동일한 제1길이를 갖고, 제2방향으로는 상기 제1길이에 기초하여 결정되는 제2길이를 가짐-를 디코딩하는 단계; 및
상기 이미지 디코딩 시스템이 제2이미지의 제2부분 이미지-상기 제2부분 이미지는 상기 제1방향으로는 상기 제2이미지와 동일한 제3길이를 갖고, 상기 제2방향으로는 상기 제3길이에 기초하여 결정되는 제4길이를 가짐-를 디코딩하는 단계를 포함하며,
상기 이미지 디코딩 시스템은,
상기 제1길이와 상기 제3길이가 서로 다른 경우에도, 상기 제1부분 이미지의 면적과 상기 제2부분 이미지의 면적이 동일하거나 일정 범위내의 차이를 갖도록 상기 제2길이 및 상기 제4길이를 결정하는 것을 특징으로 하는 이미지 디코딩 방법.
An image decoding system, comprising: a first partial image of a first image, the first partial image having a first length equal to the first image in a first direction and a second length in a second direction determined based on the first length Having a first length and a second length; And
Wherein the image decoding system has a second partial image of a second image, the second partial image having a third length equal to the second image in the first direction, And having a fourth length determined by the first length,
The image decoding system comprising:
Determining the second length and the fourth length so that the area of the first partial image and the area of the second partial image are the same or have a difference within a certain range even when the first length and the third length are different from each other And the image is decoded.
이미지 디코딩 시스템이 이미지의 디코딩된 정보인 텍스쳐를 저장할 미리 설정된 형태를 갖는 복수의 메모리 영역들을 설정하는 단계;
상기 이미지 디코딩 시스템이 상기 이미지의 제1방향의 특정 라인을 디코딩하는 단계; 및
상기 이미지 디코딩 시스템이 상기 특정 라인의 디코딩된 정보인 텍스쳐를 상기 복수의 메모리 영역에 분할하여 기입하는 단계를 포함하는 이미지 디코딩 방법.
The method comprising: setting a plurality of memory areas having a predetermined type for storing a texture, the image decoding system being decoded information of the image;
The image decoding system decoding a particular line in a first direction of the image; And
Wherein the image decoding system divides and writes a texture, which is decoded information of the specific line, into the plurality of memory areas.
제1항, 제5항, 제8항 내지 제9항 중 어느 한 항에 기재된 방법을 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
A computer-readable recording medium recording a program for performing the method according to any one of claims 1, 5, 8 to 9.
이미지에 포함되는 부분 이미지를 디코딩하는 이미지 디코딩 시스템에 있어서,
상기 부분 이미지의 제1방향의 제1라인에서 상기 제1방향의 제N(여기서, N은 2 이상의 자연수)라인까지 순차적으로 디코딩을 수행하는 디코딩 모듈; 및
상기 부분 이미지를 특정하여 상기 디코딩 모듈이 상기 부분 이미지를 디코딩하도록 제어하는 제어모듈을 포함하며,
상기 제어모듈은,
상기 부분 이미지의 제1방향의 길이에 기초하여 상기 부분 이미지의 제2방향의 길이에 상응하는 상기 N을 결정하는 것을 특징으로 하고,
상기 부분 이미지의 특정 라인의 디코딩된 정보인 텍스쳐를 저장할 미리 설정된 형태를 갖는 복수의 메모리 영역들을 설정하며,
상기 디코딩 모듈은,
상기 텍스쳐를 상기 복수의 메모리 영역에 분할하여 기입하는 이미지 디코딩 시스템.
An image decoding system for decoding a partial image included in an image,
A decoding module that sequentially performs decoding from a first line in a first direction of the partial image to an Nth line in the first direction (where N is a natural number of 2 or more); And
And a control module for specifying the partial image and controlling the decoding module to decode the partial image,
The control module includes:
And determines the N corresponding to the length of the partial image in the second direction based on the length of the partial image in the first direction,
Setting a plurality of memory areas having a predetermined form for storing a texture which is decoded information of a specific line of the partial image,
The decoding module includes:
And dividing the texture into the plurality of memory areas and writing the texture into the plurality of memory areas.
삭제delete 삭제delete 삭제delete 제11항에 있어서, 상기 디코딩 모듈은,
상기 텍스쳐를 제1메모리 영역의 상기 제1방향의 길이까지 순차적으로 기입한 후, 상기 텍스쳐의 나머지 부분을 상기 제1메모리 영역에 연속되는 제2메모리 영역에 연속하여 기입하는 것을 특징으로 하는 이미지 디코딩 시스템.
12. The apparatus of claim 11, wherein the decoding module comprises:
Writing the texture sequentially to a length in the first direction of the first memory area and then writing the remaining portion of the texture to a second memory area continuous to the first memory area, system.
삭제delete 삭제delete 이미지의 디코딩을 수행하는 디코딩 모듈; 및
상기 디코딩 모듈을 제어하기 위한 제어모듈을 포함하며,
상기 제어모듈은,
상기 이미지의 디코딩된 정보인 텍스쳐를 저장할 미리 설정된 형태를 갖는 복수의 메모리 영역들을 설정하고,
상기 디코딩 모듈은,
상기 이미지의 제1방향의 특정 라인을 디코딩하면서, 상기 특정 라인에 상응하는 텍스쳐를 상기 복수의 메모리 영역에 분할하여 기입하는 것을 특징으로 하는 이미지 디코딩 시스템.
A decoding module for performing decoding of the image; And
And a control module for controlling the decoding module,
The control module includes:
Setting a plurality of memory areas having a predetermined form for storing a texture which is decoded information of the image,
The decoding module includes:
Wherein a texture corresponding to the specific line is divided and written into the plurality of memory areas while a specific line in the first direction of the image is being decoded.
KR1020140040769A 2014-04-04 2014-04-04 Method and system for image decoding Active KR101603701B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140040769A KR101603701B1 (en) 2014-04-04 2014-04-04 Method and system for image decoding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140040769A KR101603701B1 (en) 2014-04-04 2014-04-04 Method and system for image decoding

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020150164184A Division KR20150139482A (en) 2015-11-23 2015-11-23 Method and system for image decoding

Publications (2)

Publication Number Publication Date
KR20150116135A KR20150116135A (en) 2015-10-15
KR101603701B1 true KR101603701B1 (en) 2016-03-16

Family

ID=54356791

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140040769A Active KR101603701B1 (en) 2014-04-04 2014-04-04 Method and system for image decoding

Country Status (1)

Country Link
KR (1) KR101603701B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100530681B1 (en) 1996-07-11 2006-03-22 코닌클리케 필립스 일렉트로닉스 엔.브이. How to send and receive coded video images

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100530681B1 (en) 1996-07-11 2006-03-22 코닌클리케 필립스 일렉트로닉스 엔.브이. How to send and receive coded video images

Also Published As

Publication number Publication date
KR20150116135A (en) 2015-10-15

Similar Documents

Publication Publication Date Title
US9218640B2 (en) Image processing device for displaying moving image and image processing method thereof
JP6225446B2 (en) Moving image data distribution apparatus, method, program, and system
KR102754795B1 (en) Bit-plane encoding of data arrays
US20140086309A1 (en) Method and device for encoding and decoding an image
KR20140031978A (en) Video data generation unit, video image display device, video data generation method, video image display method, and video image file data structure
WO2021117802A1 (en) Image processing device and method
US7567723B2 (en) Resolution changing method and apparatus
CN111510717A (en) Image splicing method and device
JP2010538500A (en) Generating video data for special playback
KR101603701B1 (en) Method and system for image decoding
CN105323636A (en) Video processing method and video processing device
JP5544253B2 (en) Image processing apparatus, image processing method, and data structure of moving image file
KR20150139482A (en) Method and system for image decoding
KR20240110005A (en) Feature encoding/decoding method, device, and recording medium storing bitstream
JP5078538B2 (en) Image reproducing apparatus, processing method thereof, and program thereof
US20170070734A1 (en) Coding apparatus, decoding apparatus, and video transmission system
JP5484276B2 (en) Data compression apparatus, data decoding apparatus, data compression method, data decoding method, and data structure of compressed video file
JP5264526B2 (en) Image transmitting apparatus, image transmitting method and program
JP4584115B2 (en) Image encoding apparatus, image encoding method, image encoding program, and computer-readable recording medium recording the image encoding program
US20120114258A1 (en) Image decoding apparatus and non-transitory computer readable medium
KR20140043663A (en) Moving image processing apparatus and moving image processing method
KR100593352B1 (en) Image data recording apparatus and method and recording medium
JP6490272B2 (en) Image encoding device, image encoding method and program, image decoding device, image decoding method and program
CN119856493A (en) Feature encoding/decoding method and apparatus based on predictive model training, and recording medium having bit stream stored therein
JP2009100104A (en) Moving image reproducing apparatus, its processing method, and its program

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20140404

PA0201 Request for examination
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20150309

Patent event code: PE09021S01D

AMND Amendment
E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20150923

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20150309

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I

X091 Application refused [patent]
PG1501 Laying open of application
A107 Divisional application of patent
AMND Amendment
PA0107 Divisional application

Comment text: Divisional Application of Patent

Patent event date: 20151123

Patent event code: PA01071R01D

PX0901 Re-examination

Patent event code: PX09011S01I

Patent event date: 20150923

Comment text: Decision to Refuse Application

Patent event code: PX09012R01I

Patent event date: 20150709

Comment text: Amendment to Specification, etc.

PX0701 Decision of registration after re-examination

Patent event date: 20151210

Comment text: Decision to Grant Registration

Patent event code: PX07013S01D

Patent event date: 20151123

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

Patent event date: 20150923

Comment text: Decision to Refuse Application

Patent event code: PX07011S01I

Patent event date: 20150709

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

X701 Decision to grant (after re-examination)
GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20160309

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20160310

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20190102

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20190102

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20200115

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20200115

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20201230

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20220105

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20240228

Start annual number: 9

End annual number: 9

PR1001 Payment of annual fee

Payment date: 20250311

Start annual number: 10

End annual number: 10