KR100598754B1 - Device for coding original image data, device for decoding coded image data, method for coding original image data, method for decoding coded image data, method for transmitting image data, computer-readable storing media - Google Patents
Device for coding original image data, device for decoding coded image data, method for coding original image data, method for decoding coded image data, method for transmitting image data, computer-readable storing media Download PDFInfo
- Publication number
- KR100598754B1 KR100598754B1 KR1019970033456A KR19970033456A KR100598754B1 KR 100598754 B1 KR100598754 B1 KR 100598754B1 KR 1019970033456 A KR1019970033456 A KR 1019970033456A KR 19970033456 A KR19970033456 A KR 19970033456A KR 100598754 B1 KR100598754 B1 KR 100598754B1
- Authority
- KR
- South Korea
- Prior art keywords
- image data
- original image
- data
- pixels
- learning
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 부호화될 원 화상과 거의 동일한 복호화 화상을 제공할 수 있도록 구성된 장치 및 방법을 제공한다. 특히, 화상의 각 블록의 픽셀들에 대한 픽셀값 및 해당 블록의 클래스에 대응하는 맵핑 계수들을 사용한 소정의 계산을 실행함으로써 원 화상의 픽셀들의 수보다 적은 픽셀을 가진 정정 데이타가 계산된다. 그 다음, 정정 데이타를 기초로 하여 로컬 디코더(local decoder)에서 원 화상에 대한 예측값이 산출된다. 그 다음, 오차 산출부에서, 원 화상의 예측값에 대한 예측 오차가 검출된다. 맵핑 세팅 유닛에서, 예측 오차를 기초로 하여 블록의 클래스에 대응하는 맵핑 계수가 변경된다. 이러한 과정을 반복함으로써, 예측 오차가 소정의 임계값보다 작은 경우에 생성하는 맵핑 계수들이 얻어진다. 따라서, 부호화 화상의 픽셀수는 적어도 몇 개의 화상 정보 대신에 맵핑 계수들을 포함함으로써 최소화된다.The present invention provides an apparatus and method configured to be able to provide a decoded picture almost identical to an original picture to be encoded. In particular, correction data having fewer pixels than the number of pixels of the original image is calculated by performing a predetermined calculation using pixel values for the pixels of each block of the image and mapping coefficients corresponding to the class of the block. Then, a prediction value for the original image is calculated at the local decoder based on the correction data. Then, in the error calculating unit, a prediction error with respect to the predicted value of the original image is detected. In the mapping setting unit, the mapping coefficient corresponding to the class of the block is changed based on the prediction error. By repeating this process, mapping coefficients that are generated when the prediction error is smaller than a predetermined threshold value are obtained. Thus, the number of pixels of the encoded picture is minimized by including mapping coefficients instead of at least some picture information.
Description
본 발명은 화상 부호화 장치 및 화상 부호화 방법, 화상 복호화 장치, 기록 매체 및 화상 처리 장치 및 화상 송신 방법에 관한 것이며, 보다 구체적으로 원 화상과 거의 동일한 복호 화상이 얻어지도록 화상을 씨닝-아웃(thining-out) (Subsampling) 및 압축 부호화할 수 있는, 화상 부호화 장치 및 화상 부호화 방법, 화상 복호화 장치, 기록 매체 및 화상 처리 장치 및 화상 송신 방법에 관한 것이다.The present invention relates to a picture coding apparatus, a picture coding method, a picture decoding apparatus, a recording medium and a picture processing apparatus, and a picture transmitting method, and more specifically, thinning-out a picture so that a decoded picture almost identical to an original picture is obtained. out) (Subsampling) and compression-encoding, and relates to a picture coding apparatus and a picture coding method, a picture decoding apparatus, a recording medium and an image processing apparatus, and an image transmission method.
종래, 화상을 압축하는 방법으로서 여러 가지 방법이 제안되어 있는데, 이들 방법 중의 하나로 화상의 픽셀들의 수를 씨닝-아웃하여 화상을 압축하는 방법이 있다.Conventionally, various methods have been proposed as a method of compressing an image, and one of these methods is a method of compressing an image by thinning out the number of pixels of the image.
그러나, 이렇게 씨닝-아웃하여 압축된 화상을 단순히 보간에 의해서만 신장한 경우에 그 결과 얻어진 복호 화상의 해상도가 떨어진다.However, when the thinned-out compressed image is stretched only by interpolation, the resolution of the resulting decoded image is lowered.
이렇게 복호 화상의 해상도가 열화하는 데에는 적어도 2가지 이유가 있다. 하나의 이유는 원 화상에 포함되어 있는 고주파 성분이 씨닝-아웃된 화상에는 포함되어 있지 않다는 점이다. 두 번째 이유는 씨닝 아웃 후의 화상을 구성하는 픽셀들의 픽셀값들이 원 화상을 복호화하는데 특별히 적당하지 않다는 점이다. 따라서, 이러한 문제들을 해소하는 방법 및 장치들을 제공하는 것이 요망되고 있다.There are at least two reasons for the deterioration of the resolution of the decoded image. One reason is that the high frequency components included in the original image are not included in the thinned-out image. The second reason is that the pixel values of the pixels constituting the image after thinning out are not particularly suitable for decoding the original image. Therefore, there is a need to provide a method and apparatus for solving these problems.
본 발명은 이러한 문제점을 해소하기 위해서 제안된 것이며, 원 화상 데이타와 적어도 혹은 거의 동일한 복호화 화상을 얻도록 씨닝-아웃(서브 샘플링)에 의해서 화상을 부호화하는 것이다.The present invention has been proposed to solve this problem, and encodes an image by thinning-out (subsampling) to obtain a decoded image that is at least or nearly identical to the original image data.
본 발명에 따른 화상 부호화 방법 및 장치는 원 화상 데이타의 픽셀들의 블록에 대응하는 클래스 정보를 생성한다. 클래스 정보에 의해서, 클래스 정보에 대응하는 맵핑 계수가 메모리로부터 판독된다. 부호화 화상 데이타는 원 화상 데이타 및 판독된 맵핑 계수에 응답하여 산출된다.The picture coding method and apparatus according to the present invention generates class information corresponding to a block of pixels of the original picture data. By the class information, mapping coefficients corresponding to the class information are read out from the memory. The coded picture data is calculated in response to the original picture data and the read mapping coefficients.
본 발명에 따른 화상 복호화 방법 및 장치는 부호화 화상 데이타를 수신하여 픽셀들의 블록을 추출한다. 클래스 정보는 추출된 픽셀 블록에 대응하여 생성된다. 생성된 클래스 정보에 대응하는 예측 계수는 메모리로부터 판독된다. 복호화 화상 데이타는 부호화 화상 데이타 및 판독된 예측 계수에 응답하여 산출된다.An image decoding method and apparatus according to the present invention receives encoded image data and extracts a block of pixels. Class information is generated corresponding to the extracted pixel block. The prediction coefficients corresponding to the generated class information are read out from the memory. The decoded picture data is calculated in response to the coded picture data and the read prediction coefficients.
본 발명의 다른 특징들은 첨부하는 도면과 관련한 다음의 설명을 참조하여 고려할 때 보다 명백해질 것이다.Other features of the present invention will become more apparent upon consideration with reference to the following description in conjunction with the accompanying drawings.
본 명세서에 개시된 여러 실시예들의 수단을 각각 간의 대응 관계를 명확히 하기 위해서, 먼저 본 발명의 특정한 특징들에 대하여 도면들을 참조하여 간략히 설명한다. "유닛(unit)"이라는 용어는 하드 와이어식 회로(hard-wired circuit), 적절한 소프트웨어가 로드된 메인 프레임 컴퓨터, 프로그램된 마이크로 프로세서 혹은 마이크로 콘트롤러, 또는 이들의 결합을 포함하는 광의로 해석됨을 이해해야 할 것이다.BRIEF DESCRIPTION OF THE DRAWINGS In order to clarify the corresponding relationship between the means of the various embodiments disclosed herein, certain features of the present invention will first be briefly described with reference to the drawings. It is to be understood that the term "unit" is broadly understood to include a hard-wired circuit, a mainframe computer loaded with appropriate software, a programmed microprocessor or microcontroller, or a combination thereof. will be.
본 발명의 화상 부호화 장치는 화상을 규정된 블록으로 블록킹하기 위한 (클래스 분류를 위한) 블록킹 수단(예를 들면, 도 2에 도시한 블록킹 유닛(11)등), 상기 블록들의 특성에 응답하여 블록들을 규정된 클래스들로 분류하기 위한 분류 수단(예를 들면, 도 2에 도시한 클래스 분류 유닛(13)), 각 블록의 규정된 맵핑 계수를 기억하기 위한 기억 수단(예를 들면, 도 2에 도시된 맵핑 계수 메모리(14)), 및 부호화 화상용의 팩셀수가 적은 부호화 데이타를 계산하기 위한 계산 수단(예를 들면, 도 2에 도시된 계산 유닛(16))을 포함한다. 특히, 계산 수단은 한 블록의 픽셀들의 픽셀값 및 해당 블록이 속해 있는 블록의 클래스에 대응하는 하나 혹은 그 이상의 맵핑 계수에 대한 규정된 계산을 행한다.The picture coding apparatus of the present invention provides a block means (for example, a
상술한 것을 상기 열거된 수단 각각으로 제한되어서는 안 된다.The foregoing should not be limited to each of the above listed means.
도 1을 참조하면, 도 1에는 화상 처리 시스템이 도시되어 있다. 작동시에 디지털화된 화상 데이타가 송신 장치(1)에 공급된다. 송신 장치(1)는 입력된 화상 데이타를 규정된 산출 처리하여 그 결과 얻어진 데이타를, 예를 들면 광학 디스크, 광-자기 디스크 혹은 자기 테이프 등을 포함하는 기록 매체(2) 상에 기록하거나, 혹은 그 결과 얻어진 데이타를, 예를 들면 지상파, 위성 회로, 전화선 혹은 CATV 네트워크 등의 전송 경로(3)를 통해 송신한다.Referring to FIG. 1, an image processing system is shown in FIG. In operation, the digitized image data is supplied to the
이어서, 기록 매체(2) 상에 기록된 부호화 데이타가 수신 장치(4)에서 재생되거나 혹은 전송 경로(3)를 통해서 송신된 부호화 데이타가 수신된다. 이렇게 부호화된 데이타는 신장되어 복호화되는데, 그 결과 얻어진 복호화 화상이 도면에 도시되어 있지 않은 디스플레이에 공급된다.Subsequently, the encoded data recorded on the
상술한 화상 처리 시스템은, 예를 들면 광학 디스크 장치, 광 자기 디스크 장치, 자기 테이프 장치 등의 기록/재생 화상용 장치, 및 예를 들면 비디오 폰 장치, 텔레비젼 방송 시스템 및 CATV 시스템 등과 같은 화상의 송신을 실행하는 장치에 적용될 수 있다. 또한, 도 1의 화상 처리 시스템은 이동시에 사용될 수 있으며 예를 들면 휴대용 전화기 등과 같이 전송 레이트가 적은 휴대 단말 등에도 적용될 수 있다.The above-described image processing system is, for example, a device for recording / reproducing images such as an optical disk apparatus, a magneto-optical disk apparatus, a magnetic tape apparatus, and the transmission of images such as, for example, a video phone apparatus, a television broadcasting system, a CATV system, and the like. It can be applied to a device for executing. In addition, the image processing system of FIG. 1 can be used in mobile applications, and can also be applied to portable terminals having a low transmission rate, such as, for example, a portable telephone.
도 2를 참조하면, 도 2에서는 부호화될 화상 데이타가 블록킹 유닛(11)으로 입력된다 블록킹 유닛(11)은 화상을 주목된 픽셀을 중심으로 하는 블록(예를 들면, 각 블록은 3×3 픽셀 블록으로 될 수 있다)으로 분할한다. 이어서, 블록들은 ADRC(Adaptive Dynamic Range Coding) 처리 유닛(12)과 지연 유닛(15)에 공급된다.Referring to FIG. 2, in FIG. 2, image data to be encoded is input to the
이어서 ADRC 처리 유닛(12)은 블록킹 유닛(11)으로부터 제공된 블록에 대하여 ADRC 처리를 행하고 그 결과 얻어진 ADRC 코드를 클래스 분류 유닛(13)으로 출력한다.The ADRC
블록들의 픽셀을 표시하는데 필요한 비트 수는 ADRC 처리에 따라 감소된다.The number of bits needed to represent the pixels of the blocks is reduced with ADRC processing.
설명을 간단히 하기 위해서 단지 4개의 픽셀만을 갖는 블록을 사용하여 일례를 설명한다. 도 3a를 참조하면, 4개의 픽셀에 대한 최대값 MAX 및 최소값 MIN이 ADRC 처리에서 검출된다. 이어서, DR=MAX-MIN가 블록의 국부화 다이내믹 범위로서 취해지고, 이 블록을 포함하는 픽셀들의 픽셀값들이 다이내믹 범위 DR에 기초한 K-비트로 양자화된다.For simplicity, an example is described using a block having only four pixels. Referring to FIG. 3A, the maximum value MAX and the minimum value MIN for four pixels are detected in the ADRC process. DR = MAX-MIN is then taken as the localized dynamic range of the block, and the pixel values of the pixels comprising this block are quantized to K-bits based on the dynamic range DR.
즉, 최소값 MIN이 블록 내의 픽셀들 각각의 값으로부터 감산되고, 이러한 감산의 결과가 DR/2K로 제산된 후 그 결과 얻어진 제산된 값에 대응하는 코드로 변환된다. 예를 들면, 도 3b에 도시된 바와 같이 K=2일 때, 다이내믹 범위 DR은 4(22) 등분으로 분할되고, 각 픽셀값이 속하는 범위의 해당 부분에 대한 판정이 내려진다. 분할된 값이 최하위 레벨 범위, 제2의 최하위 레벨의 범위, 제3의 최하위 레벨의 범위, 혹은 최상위 레벨의 범위에 속할 때, 예를 들면 00B, 01B, 10B, 혹은 11B의 2비트로 각 부호화가 행해진다(B는 2진수를 표시한다). 이어서, 복호화는 복호화 측에서 ADRC코드 00B, 01B, 10B 및 11B를 최하위 레벨 범위의 중심값 L00, 제2의 최하위 레벨 범위의 중심값 L01, 제3의 최하위 레벨 범위의 중심값 L10 및 최상위 레벨 범위의 중심값 L11으로 변환함으로써 실행된다. 최소값 MIN이 이들 값에 가산된다.That is, the minimum value MIN is subtracted from the value of each of the pixels in the block, and the result of this subtraction is divided by DR / 2K and then converted into a code corresponding to the resulting divided value. For example, when K = 2, as shown in FIG. 3B, the dynamic range DR is divided into 4 (2 2 ) equal parts, and a determination is made as to the corresponding portion of the range to which each pixel value belongs. When the divided value belongs to the lowest level range, the second lowest level range, the third lowest level range, or the highest level range, for example, each encoding is performed by two bits of 00B, 01B, 10B, or 11B. (B represents a binary number). Subsequently, in decoding, ADRC codes 00B, 01B, 10B, and 11B are assigned to the center value L00 of the lowest level range, the center value L01 of the second lowest level range, the center value L10 of the third lowest level range, and the highest level range. Is executed by converting to the center value L11. The minimum value MIN is added to these values.
도 3b에 도시되어 있는 ADRC의 형태를 넌-에지 매칭(non-edge matching)이라 부른다. 도 3c는 개선된 ADRC 처리를 나타내고 있다. 도 3c에 도시된 바와 같이, 다이내믹 범위 DR은 4등분으로 분할되고 최하위 레벨의 범위에 속하는 픽셀값의 평균값MIN' 및 최상위 레벨의 범위에 속하는 픽셀값의 평균값 MAX'가 ADRC코드 00B 및 11B로 변환된다. MAX'-MIN'으로 정의된 다이내믹 범위 DR'를(3등분으로)분할하는 레벨은 ADRC 복호화가 행해지도록 ADRC코드 01B 및 10B로 변환된다.The form of ADRC shown in FIG. 3B is called non-edge matching. 3C shows improved ADRC processing. As shown in Fig. 3C, the dynamic range DR is divided into quarters and the average value MIN 'of pixel values in the range of the lowest level and the average value MAX' of pixel values in the range of the highest level are converted into ADRC codes 00B and 11B. do. The level of dividing the dynamic range DR 'defined by MAX'-MIN' (in three equal parts) is converted into ADRC codes 01B and 10B so that ADRC decoding is performed.
ADRC의 상세한 처리에 대해서는 예를 들면 일본 공개 특허 공보 평3-53778호에 상세히 개시되어 있다.The detailed processing of ADRC is disclosed in detail in Unexamined-Japanese-Patent No. 3-53778, for example.
원시 블록을 구성하는 픽셀들에 할당된 비트수 보다 적은 수의 비트를 사용해서 재 양자화를 행하는 ADRC 처리를 행함으로써 비트수가 감소될 수 있다.The number of bits can be reduced by performing ADRC processing to re-quantize using fewer bits than the number of bits allocated to the pixels constituting the original block.
다시 도 2를 참조하면, 클래스 분류 유닛(13)은 이들 블록들의 특성에 응답하여 ADRC 처리 유닛(12)으로부터의 블록을 분류하는 클래스 분류 처리를 행한다. 블록이 속해 있는 해당 클래스에 대한 정보는 클래스 정보로서 맵핑 계수 메모리(14)에 제공된다.Referring again to FIG. 2, the
이제부터, 상세한 클래스 분류 처리에 대해서 구성예를 참조하여 설명한다. 도 4a에 도시된 바와 같이, 주목된 픽셀(noted pixel)과 이것에 이웃하는 3개의 픽셀이 2×2 픽셀 블록(클래스 분류 블록)을 구성하는데, 해당 블록의 픽셀들의 각각은 1비트(제로(0) 혹은 1의 레벨)로 표시된다. 이 때, 이들 2×2 픽셀 블록은 각각의 픽셀들의 레벨 분포에 의해서 도 4b에 도시한 바와 같은 16(=(21)4) 패턴으로 분류된다. 이러한 패턴 분할은 클래스 분류 유닛(13)에 의해서 행해질 수 있는 클래스 분류 처리의 일례이다.The detailed class classification process will now be described with reference to the configuration examples. As shown in Fig. 4A, a noted pixel and three neighboring pixels constitute a 2x2 pixel block (class classification block), each of which has one bit (zero ( 0) or 1 level). At this time, these 2x2 pixel blocks are classified into 16 (= (2 1 ) 4 ) patterns as shown in Fig. 4B by the level distribution of the respective pixels. This pattern division is an example of class classification processing that can be performed by the
클래스 분류 처리는 화상(블록 내의 화상)의 활동(activity)(화상 복잡성)을 보다 더 고려하도록 행해질 수도 있다.The class classification process may be done to further consider the activity (picture complexity) of the picture (picture in the block).
예를 들면, 클래스 분류용 블록이 3×3의 9픽셀로 구성되고 이와 같은 클래스 분류용 블록을 대상으로 하여 클래스 분류 처리가 행해지도록 부호화될 화상 데이타에 8비트가 할당되어 있는 경우에 상당수의 클래스 분류 패턴(28)9이 그 결과로서 생길 수 있다.For example, when a class classification block is composed of 9 pixels of 3 x 3 and 8 bits are allocated to image data to be encoded so that class classification processing is performed for such a class classification block, a considerable number of classes are used. The
따라서, ADRC 처리 유닛(12)에서, 클래스 분류용 블록에 대해서, 클래스 분류용 블록을 구성하는 픽셀의 비트수를 저감하고, 더욱이 클래스 수도 삭감할 수 있도록, 즉 ADRC 처리 유닛(12)에서 예를 들면 1비트의 ADRC 처기가 행해지는 것으로 할 때 클래스 수는 (28)9에서 (21)9, 즉 512로 감소되도록 ADRC 처리가 행해진다.Therefore, in the
상술한 실시예에서는 클래스 분류 처리가 ADRC 처리 유닛(12)으로부터 출력된 ADRC 코드에 기초하여 클래스 분류 유닛(13)에서 행해진다. 그러나, 클래스 분류 처리는, 에를들면 DPCM(예측 부호화:estimation coding), BTC(Block Truncation Coding), VQ(벡터 양자화: Vector quantization), DCT(이산 코사인 변환:Discrete Cosine Transforms) 또는 아더마 변환(Adamar transforms) 혹은 다른 변환이 행해진 데이타를 사용하여 행해질 수도 있다.In the above-described embodiment, class classification processing is performed in the
다시 도 2를 참조하면, 맵핑 계수 메모리(14)는 클래스 정보의 각 아이템용의 학습 처리(맵핑 계수 학습)에 의해서 얻어진 맵핑 계수를 기억한다. 학습 처리에 대해서는 후술한다. 클래스 분류 유닛(13)으로부터 공급된 클래스 정보는 어드레스로 제공되며, 제공된 어드레스에 기억된 맵핑 계수는 계산 유닛(16)에 공급된다.Referring again to FIG. 2, the
지연 유닛(15)은 이들 블록용 클래스 정보에 대응하는 맵핑 계수가 맵핑 계수 메모리(14)로부터 판독될 때까지 블록킹 회로(11)로부터 공급된 블록을 지연한다. 이어서, 지연된 블록들이 계산 유닛(16)에 공급된다. The
계산 유닛(16)은 지연 유닛(15)으로부터 공급된 블록을 구성하는 픽셀에 대한 픽셀값 및 맵핑 계수 메모리(14)로부터 공급된 해당 블록의 대응하는 클래스에 대응하는 맵핑 계수를 사용하여 규정된 동작을 행한다. 이러한 방식으로, 화상용의 픽셀수가 씨닝-아웃(감소)되어 부호화 데이타가 계산된다. 즉, 블록킹 유닛(11)에 의해서 출력된 블록을 구성하는 픽셀들 각각에 대한 픽셀값을 y1, y2, …로 하고, 맵핑 계수 메모리(14)에 의해서 출력된 상기 블록의 클래스에 대응하는 맵핑 계수를 K1, K2, …로 하면 계산 유닛(16)은 블록킹 유닛(11)에 의해서 출력된 블록의 하나 또는 그 이상의 대표 픽셀(예를 들면, 중심 픽셀)의 픽셀값으로서 출력되는 씨닝-아웃 수로서 간주된 규정된 계수값f(y1, y2, …,K1, K2, …)를 계산한다.The calculating
블록킹 유닛(11)에 의해서 출력된 클래스 분류용 블록을 구성하는 픽셀들의 수를 N으로할 때, 계산 유닛(16)은 1/N만큼 화상 데이타를 감소시켜 감소된 화상 데이타를 부호화 데이타로서 출력한다.When the number of pixels constituting the class classification block output by the blocking
따라서, 계산 유닛(16)에 의해서 출력된 부호화 데이타는 N픽셀을 포함하는 한 블록의 중심 픽셀이 단순히 추출되어 출력된 경우에 소위 단순 씨닝-아웃(Simple thinning-out)을 행해서는 얻어지지 않음을 알 수 있다. 오히려, 부호화 데이타는 상술한 바와 같은 블록을 구성하는 N개의 픽셀에 의해서 정의된 계수값f(y1, y2, …,K1, K2, …)이다. 다른 관점에서 보면, 계수값f(y1, y2, …,K1, K2, …)는 단순 씨닝-아웃 처리에 의해서 얻어질 수 있는 것으로 생각되지만, 블록의 중심에서의 픽셀의 픽셀값은 주변 픽셀값에 기초하여 정정(조정)된다. 맵핑 계수와 블록을 구성하는 픽셀을 연산한 결과로부터 얻어진 데이타인 부호화 데이타를 이후에는 정정된 데이타라고 부른다.Therefore, the encoded data output by the
계산 유닛(16)에서 생성되는 산술 처리는 블록킹 유닛(11)에 의해서 출력된, 클래스 분류용 블록을 구성하는 픽셀들 각각의 픽셀값을 계수값f(y1, y2, …,K1, K2, …)로 맵하는 처리로 간주될 수 있다. 이 처리에 사용되는 계수K1, K2, …를 맵핑 계수로 부른다.The arithmetic processing generated in the
송신/기록 장치(17)는 계산 유닛(16)으로부터 부호화 데이타로서 공급된 정정된 데이타를 기록 매체(2) 상에 기록하고 및/또는 전송 경로(3)를 통해서 정정된 데이타를 송신한다.The transmission /
이어서, 도 5의 플로우 챠트를 참조하여 상기 동작을 설명한다.Next, the above operation will be described with reference to the flowchart of FIG. 5.
화상 데이타가 예를 들면 1 프레임 단위로 블록킹 유닛(11)에 공급된다. 이어서, 스텝 S1에서, 블록킹 유닛(11)은 화상 데이타를, 예를 들면 도 6에서 픽셀 Y33(1) 내지 Y33(9)을 둘러싸는 사각형으로 도시한 바와 같이 3×3(수평, 수직)으로서 배열된 9개의 픽셀 클래스 분류 블록으로 분할한다. 이 블록들은 해당 순서대로 ADRC 처리 유닛(12) 및 지연 유닛(15)으로 공급된다. Image data is supplied to the blocking
클래스 분류용 블록들이 3×3 픽셀의 정사각형 블록으로서 도시되어 있지만, 이들 블록이 굳이 정사각형일 필요는 없음을 이해해야 한다. 예를 들면, 블록들은 장방형, 교차형이거나 혹은 임의의 다른 형태를 가질 수 있다. 그 외에, 블록을 구성하는 픽셀의 수가 3×3으로서 배열된 9개의 픽셀로 제한되지 않는다. 또한, 클래스 분류용 블록은 직접 이웃하는 픽셀을 포함하는 것 외에 서로 멀리 떨어져 있는 픽셀을 포함할 수 있다. 그러나, 픽셀의 모양 및 수는 후술하는 바와 같이 맵 계수 학습용으로 사용되는 블록의 픽셀의 모양 및 수와 일치되게 하는 것이 바람직하다.Although the blocks for class classification are shown as square blocks of 3x3 pixels, it is to be understood that these blocks need not necessarily be square. For example, the blocks may be rectangular, intersecting or any other shape. In addition, the number of pixels constituting the block is not limited to nine pixels arranged as 3x3. In addition, the class classification block may include pixels that are far apart from each other in addition to including pixels that are directly neighboring. However, it is preferable that the shape and number of the pixels match the shape and number of the pixels of the block used for the map coefficient learning as described below.
ADRC 처리 유닛(12)이 블록킹 유닛(11)으로부터 클래스 분류용 블록을 수신할 때, 스텝 S2에서 그 블록에 대하여 ADRC 처리(예를 들면, 1비트 ADRC 처리)를 실시해서, 그것에 의해서 원 화상 데이타의 픽셀보다 보다 수가 적은 비트에 의해서 표현된 픽셀을 가진 블록이 판정된다. 이어서 ADRC 처리된 블록이 클래스 분류 유닛(13)으로 공급된다. When the
스텝 S3에서, ADRC 처리 유닛(12)으로부터 제공된 클래스 분류용 블록은 클래스 분류 유닛(13)에서 클래스 분류된다. 그 결과 얻어진 클래스 정보가 어드레스로서 맵핑 계수 메모리(14)로 공급된다. 스텝 S3A에서, 클래스 분류 유닛(13)에 의해서 공급된 클래스 정보에 대응하는 맵핑 계수는 맵핑 계수 메모리(14)로부터 판독 된 후에 계산 유닛(16)에 공급된다. In step S3, the class classification block provided from the
한편, 지연 유닛(15)에서, 블록킹 회로(11)로부터 제공된 블록들은 맵핑 계수 메모리(14)로부터의 블록용 클래스 정보에 대응하는 맵핑 계수의 판독을 기다리도록 지연된다. 적절한 지연 시간 후에, 블록들이 계산 유닛(16)으로 공급된다. 스텝S4에서, 계산 유닛(16)에서, 상술한 함수값 f(●)(이 계수 f의 괄호 안의 ●이 픽셀값 y1, y2, … 및 맵핑 계수 k1, k2, …의 세트를 나타내는 것으로 간주할 경우)이 지연 유닛(15)으로부터 제공된 클래스 분류용 블록을 구성하는 픽셀들 각각의 픽셀값과 맵핑 계수 메모리(14)로부터 제공된 맵핑 계수를 사용하여 계산된다. 이어서, 정정된 데이타(예를 들면, 블록들의 픽셀들의 중심에 있는 픽셀의 픽셀값의 정정된 형태)가 계산된다. 이어서, 정정된 데이타는 화상용의 부호화 데이타로서 송신/기록 장치(17)로 공급된다. On the other hand, in the
스텝 S5에서, 송신/기록 장치(17)에서, 계산 유닛(16)으로부터 제공된 부호화 데이타가 기록 매체(2) 상에 기록되거나 전송 경로(3)를 통해서 송신된다.In step S5, in the transmission /
이어서, 스텝S6에서, 화상 데이타의 1 프레임분의 처리가 완료되었는지에 대한 판정이 내려진다. 스텝S6에서, 화상 데이타의 1 프레임분의 처리가 아직까지 완료되지 않은 것으로 판정이 내려진 경우에, 스텝S2로 처리가 복귀되어 스텝 S2로부터 시작되는 처리가 다음 블록에 대하여 클래스 분리를 위해 반복된다. 스텝 S6에서 화상 데이타의 1 프레임분의 처리가 완료된 것으로 판정이 내려 졌을 때 스텝 S1로 처리가 복귀되고 스텝 S1로부터 시작되는 처리가 다음 프레임에 대해서 반복된다. Next, in step S6, a determination is made as to whether or not the processing for one frame of the image data is completed. In step S6, when it is determined that the processing for one frame of image data has not yet been completed, the processing returns to step S2, and the processing starting from step S2 is repeated for class separation for the next block. When it is determined in step S6 that the processing for one frame of the image data is completed, the processing returns to step S1 and the processing starting from step S1 is repeated for the next frame.
이어서, 도 7은 맵핑 계수를 계산하기 위한 학습(맵핑 계수 학습) 처리를 행하기 위한 화상 처리 장치의 구성예를 나타낸다. 예를 들면, 이 처리는 도 2의 맵핑 계수 메모리(14) 속에 기억될 맵핑 계수를 판정하는데 사용될 수 있다.Next, FIG. 7 shows a structural example of an image processing apparatus for performing a learning (mapping coefficient learning) process for calculating a mapping coefficient. For example, this process can be used to determine the mapping coefficients to be stored in the
도 7를 참조하면, 디지탈 화상 데이타(이하, 간단히 학습용 화상이라 한다)의 1 프레임 혹은 그 이상의 프레임이 메모리(21)에 기억된다. 이어서 블록킹 유닛(22)이 메모리(21)에 기억된 화상 데이타를 판독해서 블록(도 2 유닛의 블록킹 유닛(11)으로부터 출력된 클래스 분류용 블록과 동일한 구조의)을 ADRC 처리 유닛(23) 및 계산 유닛(26)으로 공급한다.Referring to FIG. 7, one frame or more frames of digital image data (hereinafter, simply referred to as learning images) are stored in the
ADRC 처리 유닛(23) 및 클래스 분류 유닛(24)은 도 2의 ADRC 처리 유닛(12) 및 클래스 분류 유닛(13)에 의해서 실행되는 처리와 유사한 처리를 행한다. 블록킹 유닛(22)에 의해서 출력된 블록에 대한 클래스 정보는 클래스 분류 유닛(24)으로부터 출력되어 어드레스로서 맵핑 계수 메모리(31)로 공급된다. The
계산 유닛(26)은 블록킹 유닛(22)으로부터 공급된 블록을 구성하는 픽셀 및 맵핑 계수 메모리(31)로부터 공급된 맵핑 계수를 사용하는 도 2의 계산 유닛(16)과 동일한 계산을 행한다. 그 결과 얻어진 정정된 데이타(계수값 f(●))가 로컬 디코더(27)에 공급된다. The
로컬 디코더(27)는 계산 유닛(26)으로부터 공급된 정정된 데이타를 기초로 학습용의 원 화상 데이타의 예측값(블록킹 유닛(22)에 의해서 출력된 블록을 구성하는 픽셀의 픽셀값의 예측값)을 예측(계산)하여, 이들 예측값을 오차 산출부(28)에 공급한다. 오차 산출부(28)는 로컬 디코더(27)로부터 공급된 예측된 값에 대응하는 학습용의 화상에 대한 픽셀값(절대값)을 메모리(21)로부터 판독하여, 상기 학습용의 이들 화상에 대한 픽셀값에 대응하는 예측값의 예측된 값의 예측 오차를 계산(검출)하여 이들의 예측 오차를 오차 정보로서 판정 유닛(29)에 공급한다. The
판정 유닛(29)은 오차 산출부(28)로부터의 오차 정보 및 규정된 임계값 ε1을 비교하고 이들의 비교 결과에 대응하도록 맵핑 계수 세팅 유닛(30)을 제어한다. 맵핑 계수 세팅 유닛(30)은 판정 유닛(29)의 제어하에 클래스 분류 유닛(24)에서 생성하는 클래스 분류의 결과로부터 얻어진 클래스의 수와 동일한 맵핑 계수의 수의 설정을 세트업(갱신)한다. 맵핑 계수는 맵핑 계수 메모리(31)로 공급된다.The
맵핑 계수 메모리(31)은 맵핑 계수 세팅 유닛(30)으로부터 공급된 맵핑 계수를 일시적으로 기억한다. 맵핑 계수 메모리(31)는 클래스 분류 유닛(24)이 블록을 분류하는 클래스의 수만큼의 맵핑 계수(맵핑 계수의 세트)를 기억할 수 있는 기억 영역을 갖는다. 이어서, 기억 영역의 각각에 새로운 맵핑 계수가 맵핑 계수 세팅 유닛(30)으로부터 공급될 때 이미 기억된 맵핑 계수 대신에 기억된다. The
맵핑 메모리(31)는 클래스 분류 유닛(24)으로부터 공급된 클래스 정보에 대응하는 어드레스에 기억된 맵핑 계수를 맵핑 계수 메모리(31)의 AD 입력에 공급하고, 맵핑 계수 메모리(31)는 이들 계수를 계산 유닛(26)에 공급한다. The
도 7의 유닛의 학습 동작에 대해서 도 8을 참조하여 이하 설명한다. The learning operation of the unit of FIG. 7 will be described below with reference to FIG. 8.
먼저, 스텝 S51에서, 맵핑 계수 세팅 유닛(30)이 클래스 분류 유닛(24)이 블록을 분류하는 클래스의 수만큼의 맵핑 계수에 대한 맵핑 계수에 대한 맵핑 계수 메모리 초기치값을 설정한다. 구체적으로, 맵핑 계수 세팅 유닛(30)으로부터의 맵핑 계수(초기치값)가 맵핑 계수가 대응하는 클래스에 대한 맵핑 계수를 유지하는 맵핑 계수 메모리(31) 내의 영역의 어드레스에 기억된다.First, in step S51, the mapping
스텝 S52에서, 블록킹 유닛(22)은 도 2의 블록킹 유닛(11)이 동작하는 방식과 동일한 방식으로 메모리(21)에 기억된 학습용의 모든 화상을 주목된 픽셀이 중심으로 되어 있는 3×3 픽셀 블록의 형태로 작성한다. 이어서, 블록킹 유닛(21)이 이들 블록을 메모리(21)로부터 판독하여 순차적으로 이들 블록을 ADRC 처리 유닛(23) 및 계산 유닛(26)에 공급한다. In step S52, the blocking
스텝 S53에서, ADRC 처리 유닛(23)에서 도 2의 ADRC 프로세서(12)가 동작하는 방식과 유사한 방식으로 블록킹 유닛(22)로부터의 블록들에 대하여 1비트 ADRC 처리가 행해진다. ADRC 처리의 결과가 클래스 분류 유닛(24)에 공급된다. 스텝 S54에서, ADRC 처리 유닛(23)으로부터 공급된 블록들의 클래스가 클래스 분류 유닛(24)에서 결정되고, 결정된 클래스 정보는 어드레스들로서 맵핑 계수 메모리(31)에 공급된다. 이어서, 스텝 S55에서, 맵핑 계수가 클래스 분류 유닛(24)로부터 공급된 클래스 정보에 대응하는 맵핑 메모리(31)의 어드레스들로부터 판독된다. 이어서, 맵핑 계수가 계산 유닛(26)에 공급된다.In step S53, 1-bit ADRC processing is performed on the blocks from the blocking
블록킹 유닛(22)으로부터 블록들을 수신하고, 수신된 블록들의 클래스에 대응하는 맵핑 계수가 맵핑 계수 메모리(31)로부터 수신되었을 때, 계산 유닛(26)이 상기 함수값 f(β)를 계산한다(스텝 S56). 특히, 계산 유닛(26)은 맵핑 계수와 블록킹 유닛(22)으로부터 공급된 블록들을 구성하는 픽셀들의 픽셀값을 사용하여 계수값을 계산한다. 이어서, 이러한 계산의 결과가 블록킹 유닛(22)으로부터 공급된 블록의 중심에 있는 픽셀의 픽셀값으로부터 정정된 정정된 데이타로서 로컬 디코더(27)에 공급된다 When the blocks are received from the blocking
예를 들면, 도 6에 도시된 바와 같이 4각형으로 둘러싸여 도시된 3×3 픽셀 블록의 형태가 블록 유닛(22)으로부터 출력된 것으로 간주될 때에, 도 6에서 ●로 도시된 픽셀의 픽셀값에 대해서 정정된 정정된 데이타가 계산 유닛(26)에서 얻어지고 로컬 디코더(27)로 출력된다. For example, when the shape of a 3x3 pixel block shown enclosed in a quadrangle as shown in Fig. 6 is regarded as being output from the
학습용 화상을 구성하는 픽셀의 수가 계산 유닛(26)에서 1/9로 씨닝아웃되어 이 씨닝-아웃된 화상이 로컬 디코더(27)로 공급된다.The number of pixels constituting the training picture is thinned out in the
도 6에서, 마크 ●로 도시된 위에서 i번째 그리고 좌측에서 j번째 픽셀에 대응하는 정정된 데이타를 정정된 데이타 Xij로 표현하고 이 정정된 데이타 Xij가 중심에 있는 것으로 간주할 때, 학습용 원 화상 데이타(원 화상 데이타)에서 생성하는 3×3으로서 배열된 9개의 픽셀에 대한 픽셀값은 최좌측 오른쪽 방향으로부터 그리고 위에서 아래 방향으로, Yij(1), Yij(2), Yij(3), Yij(4), Yij(5), Yij(6), Yij(7), Yij(8), Yij(9)로 표현된다.In Figure 6, when the expression above illustrated by mark ● in the i-th and the correction of the correction data corresponding to the j-th pixel from the left of data X ij is considered to be the corrected data X ij is in the center, learning circle The pixel values for the nine pixels arranged as 3x3 generated from the image data (original image data) are Y ij (1), Y ij (2), Y ij (from the leftmost right direction and from top to bottom). 3), Y ij (4), Y ij (5), Y ij (6), Y ij (7), Y ij (8), and Y ij (9).
도 8로 돌아가보면, 스텝 S56에서 정정된 데이타가 계산된 후에 스텝 S57에서 처리가 계속된다. 스텝 S57에서, 메모리(21)에 기억된 학습용의 모든 화상들에 대하여 정정된 데이타가 얻어졌는지에 대한 판정이 이루어진다. 스텝 S57에서 학습용의 모든 화상에 대하여 정정된 데이타가 아직 얻어지지 않은 것으로 판정된 경우에, 스텝 S53으로 처리가 복귀되어 모든 학습용의 화상에 대해서 정정된 데이타가 얻어질 때까지 스텝 S53에서 스텝 S57까지의 처리가 반복된다.8, processing continues in step S57 after the data corrected in step S56 is calculated. In step S57, a determination is made as to whether corrected data has been obtained for all the images for learning stored in the
스텝 S57에서 학습용의 모든 화상에 대하여 정정된 데이타가 얻어진 것으로 판정되었을 때, 즉, 메모리(21)에 기억된 학습용의 모든 화상에 대해서 1/9 만큼 씨닝-아웃된 화상이 얻어진 경우에, 스텝 S58에서 처리가 계속된다. 이때에 이들 씨닝-아웃된 화상은 단지 1/9만큼 씨닝-아웃된 학습용의 화상이 아니라, 오히려 이들 씨닝-아웃된 화상은 맵핑 계수 및 계산을 사용하여 얻어진 픽셀값에 기초를 두고 있다는 점에 유의해야 한다). 이어서, 학습용의 원 화상 데이타의 예측값들이 로컬 디코더(27)에서 씨닝-아웃된 화상을 국부적으로 복호화함으로써 계산되어 예측값이 오차 산출부(28)에 공급된다.When it is determined in step S57 that corrected data has been obtained for all the images for learning, that is, an image thinned out by 1/9 for all the images for learning stored in the
로컬 디코더(27)에서 얻어진 예측값을 포함하는 화상(후술하는 바와 같이, 오차 정보 산출부(28)로부터 출력된 오차 정보가 임계값 ε1보다 작은 경우)은 수신 장치(4)(도 1)의 측에서 얻어진 복호화 화상과 유사하다.The image containing the predicted value obtained by the local decoder 27 (as described later, when the error information output from the error
오차 산출부(28)에서는, 스텝 S59에서 학습용 화상이 메모리(21)로부터 판독되어 로컬 디코더(27)로부터 공급된 예측값에 대한 예측 오차가 학습용의 이들 화상과 관련하여 계산된다. 즉, 학습용의 화상에 대한 픽셀값을 Yij로 표현하고 로컬 디코더(27)로부터 출력된 예측값을 ∑(Yij)로 표현할 때, 오차 산출부(28)에서는 다음식으로 표현되는 오차 분산(오차의 자승합) Q가 계산되어 오차 정보로서 판정 유닛(29)에 공급된다.In the
Q=∑(Yij-∑[Yij])2 Q = ∑ (Y ij -∑ [Y ij ]) 2
상기 식에서, ∑은 학습용 화상의 모든 픽셀의 합을 나타낸다. In the above formula,? Represents the sum of all pixels of the learning image.
오차 정보가 오차 산출부(28)로부터 수신될 때, 판정 유닛(29)이 수신된 오차 정보를 규정된 임계값 ε1과 비교하여 크기 관계를 판정한다(스텝 S60). 스텝 S60에서의 판정 결과 오차 정보가 임계값 ε1보다 크면, 즉 로컬 디코더(27)에서 얻어진 예측값을 포함하는 화상이 학습용의 원 화상 데이타와 실질적으로 같지 않은 것으로 인식된 경우에, 판정 유닛(29)이 제어 신호를 맵핑 계수 세팅 유닛(30)에 출력한다. 이어서, 맵핑 계수 세팅 유닛(30)은 스텝 S61에서 판정 유닛으로부터의 제어 신호에 따라 맵핑 계수를 갱신하고 갱신된 맵핑 계수를 맵핑 계수 메모리(31)에 새롭게 기억시킨다.When the error information is received from the
이어서 스텝 S53으로 처리가 복귀되어 맵핑 계수 메모리(31)에 기억된 갱신된 맵핑 계수를 사용하여 스텝 S53으로부터의 처리가 반복된다.Subsequently, the process returns to step S53 and the process from step S53 is repeated using the updated mapping coefficient stored in the
맵핑 계수 세팅 유닛(30)에서 생성되는 맵핑 계수의 변경은 랜덤(randum)하게 행해도 된다. 또한 현재의 오차 정보가 이전의 오차 정보보다 작을 때 이전과 동일한 경향을 갖도록 하는 변경이 이루어질 수 있으며, 현재의 오차 정보가 이전의 오차 정보보다 클 때 이전의 경향과 반대로 변경을 할 수 있다.The mapping coefficients generated by the mapping
또한, 맵핑 계수의 변경은 모든 클래스 혹은 일부 클래스에 대해서만 행해질 수 있다. 예를 들어, 일부 클래스에 대해서만 맵핑 계수를 변경했을 때는 오차 정보에 강하게 영향을 주는 클래스가 검출되고 이러한 종류의 클래스에 대한 맵핑 계수만이 변경되는 것이 바람직하다. 오차 정보에 강하게 영향을 주는 클래스는, 예를 들면 다음과 같이 발견될 수 있다. 먼저, 오차 정보가 맵핑 계수에 대한 초기값을 사용하여 오차 처리를 행함으로써 얻어진다. 이어서, 맵핑 계수가 각 클래스에 대해서 동이한 양만큼 변경되고 그 결과 얻어진 오차 정보를 초기값이 사용될 때 얻어진 오차 정보와 비교한다. 이러한 차이가 규정된 값보다 크거나 혹은 동일한 클래스는 오차 정보와 관련하여 강력한 영향력을 갖는 클래스로서 검출될 수 있다.In addition, the change of the mapping coefficient can be made only for all classes or only some classes. For example, when changing the mapping coefficient for only some classes, it is desirable that a class that strongly affects the error information is detected, and that only the mapping coefficient for this type of class is changed. A class that strongly influences the error information can be found, for example, as follows. First, error information is obtained by performing error processing using the initial value for the mapping coefficient. The mapping coefficient is then changed by the same amount for each class and the resulting error information is compared with the error information obtained when the initial value is used. A class whose difference is greater than or equal to the prescribed value may be detected as a class having a strong influence with respect to the error information.
상술한 바와 같이, K1, K2, …의 복수의 맵핑 계수를 1 세트로 할 때 이러한 정보와 관련하여 강력한 영향력을 갖는 맵핑 계수만이 갱신된다.As described above, K1, K2,... When a plurality of mapping coefficients are set to 1, only mapping coefficients having a strong influence with respect to this information are updated.
상기의 경우에는 맵핑 계수가 각 클래스에 대하여 설정되지만 이들 맵핑 계수는 예를 들면 각 블록마다 독립적으로 설정되거나 혹은 이웃하는 블록 유닛의 유닛별로 설정될 수도 있다. In the above case, mapping coefficients are set for each class, but these mapping coefficients may be set independently for each block or for each unit of neighboring block units, for example.
예를 들어, 각 블록마다 독립적으로 맵핑 계수가 설정된 경우, 복수의 맵핑 계수 세트들이 임의의 하나의 클래스에 대하여 얻어질 수 있다(한편, 맵핑 계수가 한 세트도 얻어지지 않는 클래스가 생길 수도 있다). 각 클래스에 대한 맵핑 계수를 최종적으로 결정할 필요가 있으므로, 복수의 맵핑 계수의 세트가 특정한 클래스에 대하여 얻어질 때, 복수의 맵핑 계수 세트를 대상으로 취하는 몇몇의 처리 형태를 행함으로써 한 세트의 맵핑 계수를 결정할 필요가 있다. For example, when mapping coefficients are set independently for each block, a plurality of mapping coefficient sets may be obtained for any one class (although there may be classes in which no set of mapping coefficients is obtained). . Since it is necessary to finally determine the mapping coefficients for each class, when a set of plural mapping coefficients is obtained for a particular class, one set of mapping coefficients is performed by performing some form of processing that targets the plural mapping coefficient sets. It is necessary to decide.
한편, 스텝 S60의 판정 결과, 오차 정보가 임계값 ε1보다 작으면, 즉, 로컬 디코더(27)에서 얻어진 예측값을 포함하는 화상이 학습용의 원 화상 데이타와 동일한 것으로 확인되면 처리가 완료된다. On the other hand, if the error information is smaller than the
이때, 각 클래스에 대해서 맵핑 계수 메모리(31)에 기억된 맵핑 계수가 복호화 화상을 복원할 수 있는 정정된 데이타를 얻는데 최적인 것으로 간주되어, 도 2의 맵핑 계수 메모리(14)에 기억된다. At this time, the mapping coefficient stored in the
원 화상 데이타와 거의 동일한 화상을 맵핑 계수 메모리(14)에 기억된 학습용 맵핑 계수를 사용한 정정된 데이타를 생성함으로써 수신 장치(4)(도 1) 측에서 얻어질 수 있다. An image almost identical to the original image data can be obtained on the receiving device 4 (FIG. 1) side by generating corrected data using the learning mapping coefficient stored in the
도 7의 실시예에서, 상술한 바와 같이, 블록킹 유닛(22)에서 주목된 픽셀이 중심이 되어 있는 3×3으로서 배열된 9개의 픽셀로 된 블록들의 형태로 화상이 작성된다. 또한, ADRC 프로세서(23)에서 1 비트의 ADRC 처리가 행해진다. 클래스 분류 유닛을 사용하여 클래스 분류하여 얻어진 클래스의 수는 512(=(21))9 이므로, 512 세트의 맵핑 계수가 얻어질 수 있다.In the embodiment of Fig. 7, as described above, an image is created in the form of blocks of nine pixels arranged as 3x3 with the pixel of interest in the blocking
이어서, 도 7의 로컬 디코더(27)의 구성예가 도 9에 도시되어 있다. Next, a configuration example of the
계산 유닛(26)으로부터의 정정된 데이타가 클래스 분류용 블록킹 유닛(41) 및 예측값 계산용 블록킹 유닛(42)에 공급된다. 클래스 분류용 블록킹 유닛(41)은 블록 단위로 주목된 정정된 데이타가 중심이 되어 있는 블록들의 형태로 정정된 데이타를 작성한다. The corrected data from the
즉, 도 6과 관련하여 상술한 바와 같이, 위에서 i번째 그리고 좌측에서 j번째의 정정된 데이타(압축된 데이타)(혹은 픽셀)(도 6에서 마크 ●로 도시한 부분)을 Xij로 표현하면, 클래스 분류용 블록킹 유닛(41)은 주목된 픽셀 Xij의 좌상, 상, 우상, 좌, 우, 좌하, 하 및 우하에 인접하는 8개의 픽셀 X(i-1)(j-1), X(i-1)j, X(i-1)(j+1), Xi(j-1), Xi(j+1), X(i-1)(j-1), X(i-1)j, X(i+1)(j+1)에 자신을 포함하는 총 9개의 픽셀을 포함하는 클래스 분류 블록을 생성한다. 이어서 이 클래스 분류 블록이 ADRC 처리 유닛(43)에 공급된다.That is, as described above with reference to Fig. 6, when the i-th and j-th corrected data (compressed data) (or pixels) (parts indicated by marks? In Fig. 6) are expressed as X ij , The classifying
도 9의 블록킹 유닛(42)에서 얻어진 클래스 분류용 블록들은 예측값으로부터 얻어진 블록들의 클래스를 결정하는 구성을 갖고 있으므로, 이러한 점에서 정정된 데이타를 계산하는 블록들의 클래스를 결정하기 위해서 도 2의 블록킹 유닛(11)에서 생성된 블록들과는 차이가 있다. Since the class classification blocks obtained in the blocking
예측값 계산용 블록킹 유닛(42)은 정정된 데이타를 원 화상 데이타(학습용 화상)에 대한 예측값을 계산하는 단위인, 주목된 정정된 데이타가 중심으로 되어 있는 예측값 계산용 블록들의 형태로 작성한다. 즉, 이 실시예에서는 예를 들면, 픽셀 Yij(1) 내지 Yij(9)에 대한 예측값을 계산하기 위해서, 정정된 데이타 Xij를 중심으로 하고, 원 화상 데이타(원 화상)에서 생성되는 3×3의 9개의 픽셀값을 Yij(1), Yij(2), Yij(3), Yij(4), Yij(5), Yij(6), Yij(7), Yij(8), Yij(9)로서 표현하면, 예측값 계산용 블록킹 유닛(42)은 5×5 매트릭스로 픽셀 Xij을 중심으로 하는 X(i-2)(j-2), X(i-2)(j-1), X(i-2)j, X(i-2)(j+1), X(i-2)(j+2), X(i-1)(j-2), X(i-1)(j-1), X(i-1)j, X(i-1)(j+1), X(i-1)(j+2), Xi(j-2), Xi(j-1), Xij, Xi(j+1), Xi(j+2), X(i+1)(j-2), X(i+1)(j-1), X(i+1)j, X(i+1)(j+1), X(i+1)(j+2), X(i+2)(j-2), X(i+2)(j-1), X(i+2)j, X(i+2)(j+1) 및 X(i+2)(j+2)의 25개의 픽셀을 포함하는 예측값 계산용의 사각형 블록을 생성한다.The predictive value calculating blocking
구체적으로, 예를 들면 예측 오차 계산용 블록은 도 6에 정사각형의 형태로 둘러싸인 원 화상에서 생성되는 픽셀 Y33(1) 내지 Y33(9)에 대한 예측된 값을 계산하기 위해서, X11, X12, X13, X14, X15, X21, X22, X23, X24, X25, X31, X32, X33, X34, X35, X41, X42, X43, X44, X45, X51, X52, X53, X54 및 X55의 25개 픽셀(정정된 데이타)로 구성된다.Specifically, for example, the prediction error calculation block is calculated by using X 11 , in order to calculate the predicted values for pixels Y 33 (1) to Y 33 (9) generated in the original image enclosed in a square shape in FIG. 6. X 12 , X 13 , X 14 , X 15 , X 21 , X 22 , X 23 , X 24 , X 25 , X 31 , X 32 , X 33 , X 34 , X 35 , X 41 , X 42 , X 43 It consists of 25 pixels (corrected data) of X 44 , X 45 , X 51 , X 52 , X 53 , X 54 and X 55 .
예측값 계산용 블록킹 유닛(42)에서 얻어진 예측값 계산용 블록들은 예측 유닛(46)에 공급된다. The predictive value calculating blocks obtained by the predictive value calculating blocking
클래스 분류용 블록의 경우와 같이, 예측값 계산용 블록의 픽셀수 및 모양은 상기한 것에 제한되지 않는다. 그러나, 로컬 디코더(27)에서는 예측값 계산용 블록을 구성하는 픽셀수가 클래스 분류용 블록을 구성하는 픽셀의 수보다 큰 것이 바람직하다. As in the case of the class classification block, the number and shape of pixels of the predictive value calculation block are not limited to the above. However, in the
상기 블록킹이 행해지고(이것은 블록킹 처리를 제외하고는 모든 처리가 동일하다) 화상의 화상 프레임의 근처에 대응하는 픽셀이 없는 경우에, 예를 들면 화상 프레임을 포함하는 픽셀들과 동일한 픽셀들이 외측에 존재하는 것으로 해서 처리가 행해진다. If the blocking is done (this is all the same except for the blocking process) and there are no corresponding pixels in the vicinity of the picture frame of the picture, for example, the same pixels as the pixels containing the picture frame are on the outside. The processing is performed by doing this.
ADRC 처리 유닛(43)은 클래스 분리용 블록킹 유닛(41)에 의해서 출력된 블록(클래스 분리용 블록 사용)에 대해서 1 비트 ADRC 처리를 행하여 그 결과들을 클래스 분리 유닛(44)에 공급한다. 클래스 분리 유닛(44)은 ADRC 처리 유닛(43)으로부터의 블록들은 클래스 소트(sort)하여 소트로부터 얻어진 클래스 정보를 예측 계수 ROM(45)의 어드레스 입력에 공급한다. 예측 계수 ROM(45)은 각 클래스에 대한 예측 계수를 유지하고, 상기 클래스 정보가 클래스 분리 유닛(44)으로부터 수신될 때 클래스 정보에 대응하는 어드레스에 유지된 예측 계수를 판독한다. 예측 계수는 예측 유닛(46)에 공급된다. 예측 계수 ROM(45)에 기억된 각 클래스에 대한 예측 계수는 후술하는 학습(예측 계수 학습)으로부터 얻어진다. The
예측 유닛(46)은 예측값 계산용 블록 유닛(42)으로부터의 예측값 계산용 블록들 및 예측 계수 ROM(45)으로부터의 예측 계수를 사용하여 원 화상 데이타에 대한 예측값을 계산(예측)한다. The
이어서, 도 10의 플로우챠트를 참조로 하여, 도 9의 장치의 동작에 대해서 설명한다. Next, with reference to the flowchart of FIG. 10, the operation | movement of the apparatus of FIG. 9 is demonstrated.
먼저, 스텝 S21에서, 로컬 디코더(27)가 블록의 형태로 계산 유닛(26)으로부터의 정정된 데이타를 작성한다. 즉, 클래스 분리용 블록킹 유닛(41)에서, 정정된 데이타가 주목된 정정된 데이타를 중심으로 하는 클래스 분류용의 3×3 픽셀의 형태로 작성되어, ADRC 처리 유닛(43)에 공급된다. 또한, 예측값 계산용 블록킹 유닛(42)에서, 정정된 데이타가 예측값 계산용의 5×5 픽셀 블록의 형태로 작성되어 예측 유닛(46)에 공급된다. 클래스 분류용의 대응 블록과 예측값 계산용의 블록이 클래스 분리용 블록킹 유닛(41)과 예측값 계산용 블록킹 유닛(42)에서 생성된다. 즉, 예를 들면, 클래스 분리용의 블록킹 유닛(41)에서 클래스 분리용의 3×3 픽셀 블록이 도 6의 정정된 데이타 X33을 중심으로 하는 경우, 동일하게 정정된 데이타 X33를 중심으로 하는 예측값 계산용의 5×5 픽셀 블록이 예측값 계산용의 블록으로서 생성된다.First, in step S21, the
스텝 S22에서, 클래스 분류용의 블록들이 수신될 때, 예를 들면 ADRC 처리 유닛(43)이 클래스 분류용의 블록들에 대해서 1비트 ADRC(1비트 양자화를 사용하여 행해진 ADRC) 처리를 행하여, 그것에 의해서 정정된 데이타가 1비트로 변환(부호화 되어)되어 클래스 분류 유닛(44)에 출력된다. 스텝 S23에서, 클래스 분류 유닛(44)은 ADRC 처리된 클래스 분류용의 블록들에 대해서 클래스 분류 처리를 한다. 즉, 클래스 분류 유닛(44)은 블록 내의 픽셀 레벨의 각각의 분포 상태를 검출하여 이를 토대로 이들 클래스 분류 블록들이 속하는 클래스를 판정한다. 이러한 클래스 판정의 결과는 클래스 정보로서 예측 계수 ROM(45)에 공급된다. In step S22, when the blocks for class classification are received, for example, the
도 10의 실시예에서, 클래스 분류용 블록들의 각각은 클래스 분류 분할이 1비트 ADRC 처리된 3×3으로서 배열된 9개의 픽셀을 포함하는 클래스 분류용 블록에 대해서 행해지므로 512(=(21))9 중의 하나에 속하게 된다.In the embodiment of Fig. 10, each of the class classification blocks is performed for a class classification block including nine pixels arranged as 3x3 with 1-bit ADRC processing, so that 512 (= (2 1 ) ) One of nine .
이어서 처리는 25×9 예측 계수가 클래스 분류 유닛(44)으로부터 공급된 클래스 정보에 대응하는 예측 계수 ROM(45)의 어드레스로부터 판독되는 스텝 S24로 진행한다. 이어서, 스텝 S25에서, 예측 유닛(46)이, 예를 들면 이들 25×9 예측 계수와, 예측값 계산용의 블록킹 유닛(42)으로부터의 예측값 계산용의 블록을 포함하는 25개의 픽셀값을 사용하는 선형 1차 방정식의 다음 형태에 따라서 원 화상 데이타의 픽셀값에 대한 예상값을 계산한다. The process then proceeds to step S24 in which the 25x9 prediction coefficient is read from the address of the
= W1X1 + W2X2 + ...= W 1 X 1 + W 2 X 2 + ...
여기서, W1, W2 ... 는 예측 계수이고, X1, X2...는 예측값 계산용의 블록들을 포함하는 픽셀들의 픽셀값(정정된 데이타)를 나타낸다.Here, W 1 , W 2 ... are prediction coefficients, and
9개 픽셀의 픽셀값은 상술한 바와 같이 도 9의 실시예에서의 예측값 계산용의 블록을 포함하는 25개의 픽셀로부터 계산된다. The pixel value of nine pixels is calculated from 25 pixels including the block for calculating the predicted value in the embodiment of FIG. 9 as described above.
구체적으로, 예를 들면, 도 6에 도시된 정정된 데이타 X33을 중심으로 하는 3×3의 정정된 데이타 X22 내지 X24, X32 내지 X34, X42 내지 X44를 포함하는 클래스 분류용의 블록용 클래스 정보 C는 클래스 분류 유닛(44)으로부터 출력되고, 정정된 데이타 X33을 중심으로 하는 5×5 픽셀에 대한 정정된 데이타 X11 내지 X15, X21 내지 X25, X31 내지 X35, X41 내지 X45 및 X51 내지 X55를 포함하는 예측값 계산용의 블록이 예측값 계산용의 블록으로서 예측값 계산용의 블록킹 유닛(42)로부터 출력된다.Specifically, for example, class classification including 3x3 corrected data X 22 to X 24 , X 32 to X 34 , X 42 to X 44 centered on the corrected data X 33 shown in FIG. 6. Block class information C for the dragon block is output from the
여기서, W1(K) 내지 W25(K)는 클래스 정보 C에 대응하는 어드레스에 예측 계수 ROM(45)에 기억되어, 그것에 의해서 해당 클래스에 대한 예측 계수로서 설정된다.Here, W 1 (K) to W 25 (K) are stored in the
정정된 데이타 X33을 중심으로 하는 원 화상 데이타에서 생성되는 3×3 픽셀(도 6에서 사각형으로 둘러싸여 있는 부분)의 픽셀값에 대한 예측값은 다음 식에 따라 계산된다.The predicted value for the pixel value of the 3x3 pixel (the portion enclosed by the rectangle in FIG. 6) generated from the original image data centered on the corrected data X 33 is calculated according to the following equation.
= w1(k)X11 + w2(k)X12 + w3(k)X13 = w 1 (k) X 11 + w 2 (k) X 12 + w 3 (k) X 13
+ w4(k)X14 + w5(k)X15 + w6(k)X21 + w 4 (k) X 14 + w 5 (k) X 15 + w 6 (k) X 21
+ w7(k)X22 + w8(k)X23 + w3(k)X24 + w 7 (k) X 22 + w 8 (k) X 23 + w 3 (k) X 24
+ w10(k)X25 + w11(k)X31 + w 10 (k) X 25 + w 11 (k) X 31
+ w12(k)X32 + w13(k)X33 + w 12 (k) X 32 + w 13 (k) X 33
+ w14(k)X34 + w15(k)X35 + w 14 (k) X 34 + w 15 (k) X 35
+ w16(k)X41 + w17(k)X42 + w 16 (k) X 41 + w 17 (k) X 42
+ w18(k)X43 + w19(k)X44 + w 18 (k) X 43 + w 19 (k) X 44
+ w20(k)X45 + w21(k)X51 + w 20 (k) X 45 + w 21 (k) X 51
+ w22(k)X52 + w23(k)X53 + w 22 (k) X 52 + w 23 (k) X 53
+ w24(k)X54 + w25(k)X55 + w 24 (k) X 54 + w 25 (k) X 55
스텝 S24에서 9개의 예측값이 얻어졌을 때, 처리는 스텝 S21로 복귀되고 9개의 픽셀 단위의 예측값을 얻기 위해서 스텝 S21 내지 스텝 S24의 처리가 반복된다. When nine predicted values are obtained in step S24, the process returns to step S21 and the processes of steps S21 to S24 are repeated to obtain predicted values in units of nine pixels.
이어서, 도 11은 도 9의 예측 계수 ROM(45)에 기억된 예측 계수를 얻기 위해서 학습(예측 계수 학습)을 실행하는 화상 처리 장치의 구성예를 나타낸다.Next, FIG. 11 shows an example of the configuration of an image processing apparatus that performs learning (prediction coefficient learning) to obtain prediction coefficients stored in the
모든 화상들에 적합한 예측 계수를 얻기 위한 학습용의 화상 데이타(학습 화상)이 학습용 블록킹 유닛(51) 및 교사용 블록킹 유닛(52)에 공급된다. Image data for learning (learning picture) for obtaining prediction coefficients suitable for all pictures is supplied to the
학습용 블록킹 유닛(51)은 입력된 화상 데이타로부터 주목된 픽셀을 중심으로 하는 도 6에 마크 ●로 도시된 위치 관계의 25개의 픽셀(5×5 픽셀)을 산출한다. 이어서, 이들 25개의 픽셀을 포함하는 블록이 ADRC 프로세서(53) 및 학습 데이타 메모리(56)에 학습용 블록으로서 공급된다. The
교사용 블록 유닛(52)에서, 예를 들면 주목된 픽셀을 중심으로 하는 3×3으로 배열된 9개의 픽셀이 입력된 화상 데이타로부터 생성된다. 이어서, 이들 9개의 픽셀을 포함하는 블록이 교사용 블록으로서 교사 데이타 메모리(58)에 공급된다. In the
예를 들어, 도 6에 마크 ●에 의해서 도시된 위치 관계의 25개 픽셀을 포함하는 학습용 블록이 학습용 블록 유닛(51)에서 생성된 경우에, 도 6에 사각형으로 둘러싸여 도시된 학습용의 3×3 픽셀 블록이 교사용의 블록킹 유닛(52)에서 생성된다. For example, in the case where the learning block including the 25 pixels in the positional relationship shown by the mark? In Fig. 6 is generated in the
ADRC 프로세서(53)가 학습용의 블록을 포함하는 25개의 픽셀로부터 중심의 9개의 픽셀(3×3 픽셀)을 추출해서, 도 9의 ADRC 처리 유닛(43)에서와 동일한 방식으로 9개의 픽셀 블록에 대해서 1비트 ADRC 처리를 행한다. 이어서, ADRC 처리된 3×3 픽셀 블록이 클래스 분류 유닛(54)에 공급된다. ADRC 프로세서(53)으로부터의 블록들이 클래스 분류 유닛(9)와 동일한 방식으로 클래스 분류 유닛(54)에서 클래스 분류되어, 얻어진 클래스 정보가 스위치(55)의 단자 "a"를 통해서 학습용 데이타 메모리(56) 및 교사용 데이타 메모리(58)로 보내진다. The
학습용의 블록킹 유닛(51)으로부터의 학습용 블록들과 교사용의 블록킹 유닛(52)으로부터의 교사용 블록이 각각 학습용 데이타 메모리(56) 및 교사용 데이타 메모리(58)에서 제공된 클래스 정보에 대응하는 어드레스에 기억된다. The learning blocks from the
학습용 데이타 메모리(56)에서, 예를 들면 도 6에 마크 ●로 표시한 5×5 픽셀을 포함하는 블록을 학습용 블록으로 간주하여 특정한 어드레스에 기억시키면, 도 6에 도시된 사각형으로 둘러싸여 도시된 3×3 픽셀 블록이 교사용 데이타 메모리(58) 내의 대응하는 어드레스에 교사용 블록으로 기억된다. In the learning
동일한 처리가 상술한 학습용의 모든 화상에 대해서 반복된다. 이러한 방식으로, 학습용의 블록 및 이러한 학습용의 블록을 포함하는 25개의 픽셀과 같은 위치 관계를 갖는 정정된 데이타의 25개의 아이템을 포함하는 예측값 계산용 블록을 사용하는 도 9의 로컬 디코더(27)에서 예측값이 얻어지는 9개의 픽셀을 포함하는 교사용 블럭이 학습용 데이타 메모리(56)의 어드레스 및 교사용 데이타 메모리(58)에서의 대응하는 어드레스에 기억된다.The same processing is repeated for all the images for learning described above. In this way, in the
복수의 정보는 학습용 데이타 메모리(56) 및 교사용 데이타 메모리(58)의 동일한 어드레스에 기억될 수 있다. 이러한 방식으로, 복수의 학습용 블록 및 교사용 블럭의 세트를 동일한 어드레스에 기억시키는 것이 가능하다.A plurality of pieces of information can be stored at the same address of the learning
이어서, 스위치(55)의 선택 단자 "a"가 단자 "b"로 전환된다. 카운터(57)의 출력이 어드레스로서 학습용 데이타 메모리(56) 및 교사용 데이타 메모리(58)로 공급된다. 카운터(57)은 규정된 클럭에 따라서 계수해서 그 계수값을 출력한다. 이러한 계수값에 대응하는 어드레스에 기억된 학습용 블록 및 교사용 블록이 각각 학습용 데이타 메모리(56) 및 교사용 데이타 메모리(58)로부터 판독되어 계산 유닛(59)으로 공급된다.Subsequently, the selection terminal "a" of the
카운터(57)의 계수값에 대응하는 학습용의 블록의 세트와 교사용의 블록의 세트가 계산 유닛(59)으로 공급된다.The set of blocks for learning and the set of blocks for teacher corresponding to the count value of the
계산 유닛(59)은 특정한 클래스에 대한 학습용의 블록의 세트와 교사용의 블록의 세트를 수신해서 오차를 최소로 하는 예측 계수(예를 들면, 최소 자승법 사용)를 계산한다.The
예를 들면, 학습용 블록을 포함하는 픽셀들의 픽셀값을 X1, X2, X3, ...로 하고 얻어질 예측 계수를 W1, W2, W3, ...로 할 때, 학습용 블럭은 선형의 1차 결합에 의해서 구성되며, 특정한 픽셀에 대한 픽셀값 y를 얻기 위해서는 예측 계수 W1, W2, W3, ...가 다음의 식 y = W1X1 + W2X2 + W3X3 + ...을 만족시키는 것이 필요하다.For example, when the pixel values of the pixels including the learning block are X1, X2, X3, ... and the predictive coefficients to be obtained are W1, W2, W3, ..., the learning block is linear first order. It is composed by combining, and in order to obtain the pixel value y for a specific pixel, the prediction coefficients W1, W2, W3, ... are given by the equation y = W 1 X 1 + W 2 X 2 + W 3 X 3 + .. It is necessary to satisfy.
계산 유닛(59)에서, 진값(true value) y에 대해서 동일한 클래스의 학습용 블록과 교사용의 대응 블록으로부터의 예측값 W1X1 + W2X2 + W3X3 + ...에 대한 자능 오차를 최소로 하는 예측 계수 W1, W2, W3, ...가 얻어진다. 따라서, 각 클래스에 대한 25×9 예측 계수가 각 클래스에 대한 상기 처리를 행함으로써 계산된다.
각 클래스에 대하여 계산 유닛(59)에서 얻어진 예측 계수가 메모리(60)에 공급된다. 계산 유닛(59)으로부터의 예측 계수 외에 계수값이 메모리(60)에 공급되어, 그것에 의해서 계산 유닛(59)으로부터의 계측 계수가 카운터(57)로부터의 계수값에 대응하는 어드레스에 기억될 수 있다. The prediction coefficients obtained in the
한 글래스의 3×3 픽셀 블록을 예측하기 위한 가장 적절한 25×9개의 예측 계수(오차를 최소로 하는 예측 계수)가 메모리(60)에 해당 클래스에 대응하는 어드레스에 기억된다.The most appropriate 25x9 prediction coefficients (prediction coefficients that minimize the error) for predicting a glass 3x3 pixel block are stored in the
이어서, 메모리(60)에 기억된 각 글래스에 대한 학습된 예측 계수가 도 9의 예측 계수 ROM(45)에 기억된다.Next, the learned prediction coefficients for each glass stored in the
예측 계수 ROM(45)에 각 클래스에 대응하는 어드레스에 실제 예측 계수를 기억시키기보다는 차라리 교사 블록을 포함하는 픽셀값의 평균값을 기억시키는 것이 가능하다. 이때, 이것을 클래스 정보라고 간주하면 이 클래스에 대응하는 픽셀값이 출력된다. 따라서, 로컬 디코더(27)는 예측값 계산용의 블록킹 유닛(42) 및 예측 유닛(46)을 제공하지 않아도 완성된다.Rather than storing the actual prediction coefficients in the addresses corresponding to each class in the
도 9의 실시예에서, 로컬 디코더(27)에는 상술한 교사(예측 계수 교사)에서 이미 얻어진 예측 계수가 예측 계수 ROM(45)에 마련되어 기억되어 있고, 특정한 예측값이 이들 예측 계수에 의해서 얻어진다. 그러나, 다른 실시예와 관련하여 후술하는 바와 같이, 예측값은 메모리로부터의 학습용 화상 데이타 및 산술 처리 유닛으로부터의 정정된 데이타에 의해 로컬 디코더(27)에서 얻어질 수도 있다. In the embodiment of Fig. 9, in the
도 12는 도 2의 맵핑 계수 메모리(14) 내에 기억된 맵핑 계수를 계산하는 학습(맵핑 계수 학습) 처리를 행하는 화상 처리 장치의 또다른 구성예이다.FIG. 12 is another configuration example of an image processing apparatus that performs a learning (mapping coefficient learning) process of calculating the mapping coefficient stored in the
도 7의 화상 처리 장치에 따라서, 예를 들면 선형 1차 방정식과는 달리 비선형의 2차 방정식으로서 함수 f를 표현함으로써 얻어질 수 있다. 그러나, 도 12의 화상 신호 처리 장치에서, 계수 f는 선형 1차 방정식에 의해서만 표현되었고 최적의 예측 계수가 얻어졌다.According to the image processing apparatus of FIG. 7, for example, unlike the linear linear equation, it can be obtained by representing the function f as a nonlinear quadratic equation. However, in the image signal processing apparatus of Fig. 12, the coefficient f is represented only by a linear linear equation and an optimal prediction coefficient has been obtained.
주목 픽셀을 중심으로 하는 도 2의 블록킹 유닛(11)에 의해서 출력된 3×3 픽셀 블록을 포함하는 픽셀들 각각에 대한 픽셀값을 y1, y2, ... , y9로 하고, 맵핑 계수 메모리(14)에 의해서 출력된 맵핑 계수를 k1, k2, ... , k9로 할 때 도 12의 화상 처리 장치는, 계산 유닛(16)이 정정된 데이타를 얻기 위해서 계수값f(y1, y2, ... , k1, k2, ...)를 계산할 때 사용된다.The pixel value for each pixel including the 3x3 pixel block output by the blocking
f(●) = k1y1 + k2y2 + ... + k9y9 f (●) = k 1 y 1 + k 2 y 2 + ... + k 9 y 9
학습에 적합한 학습용 화상은, 예를 들면 1 프레임 단위로 최적의 정정된 데이타 산출부(70)에 공급된다. 최적 정정 데이타 산출부(70)는 압축 유닛(71), 정정 유닛(72), 로컬 디코더(73), 오차 산출부(74), 및 판정 유닛(75)을 포함한다. 이어서, 화상이 학습용의 입력된 화상으로부터 소수의 픽셀로 압축되고 원 화상 데이타를 예측하기 위한 최적의 화상을 포함하는 픽셀값이 계산되어 버퍼 유닛(76)에 공급된다.The learning image suitable for learning is supplied to the optimal corrected data calculation part 70 in units of one frame, for example. The optimum correction data calculator 70 includes a
최적의 정정된 데이타 산출 유닛(70)에 공급된 학습용 화상은 압축 유닛(71) 및 오차 산출부(74)에 공급된다. 압축 유닛(71)은 도 2의 계산 유닛(16)이 픽셀을 씨닝 아웃하는 것과 동일한 비율로 학습용 화상을 단순 씨닝 아웃한다. 즉, 이 실시예에서는 학습용 화상이 1/9로 단순 씨닝 아웃되어(3×3으로서 배열된 9개의 픽셀을 1 블럭으로 한 경우에, 이 블럭의 중심에 있는 해당 픽셀이 산출된다), 학습용 화상이 압축되어 정정 유닛(72)에 공급된다.The training image supplied to the optimal corrected data calculation unit 70 is supplied to the
정정 유닛(72)은 판정 유닛(75)의 제어하에 압축 유닛(71)으로부터 제공된 단순 씨닝 아웃된 압축된 데이타(이후, 압축 데이타라 한다)를 정정한다. 그 결과 얻어진 정정된 데이타(이 데이타는 도 2의 계산 유닛(16)의 출력과 동일한 방식으로 3×3 픽셀 블록의 중심 픽셀에 대한 픽셀값의 정정된 형태인데, 이후 정정된 데이타라 한다)는 정정 유닛(72)으로부터 로컬 디코더(73)에 공급된다. The
로컬 디코더(73)는 도 7의 로컬 디코더(27)와 유사한 방식으로 정정 유닛(72)으로부터의 정정된 데이타에 기초하여 원 화상 데이타(학습용 화상)에 대한 예측값을 작성하고, 이들 예측된 값을 오차 산출부(74)에 공급한다.The
오차 산출부(74)는 도 7의 오차 산출부(28)와 동일한 방식으로 입력된 원 화상 데이타에 대하여 로컬 디코더(73)로부터의 예측값에 대한 예측 오차를 계산한다. 이 예측 오차는 오차 정보로서 판정 유닛(75)에 공급된다.The
판정 유닛(75)은 정정 유닛(72)에 의해서 출력된 정정된 데이타가 오차 산출부(74)로부터의 오차 정보에 기초하여 원 화상 데이타에 대한 압축 결과로서 적절한지를 판정한다. 판정 유닛(75)에 의해서 정정 유닛(72)에 의해서 출력된 정정된 데이타가 원 화상 데이타에 대한 압축 결과로서 적절하지 못하다고 판정하면, 정정 유닛(72)이 제어되어 압축된 데이타가 얻어진 결과에 대한 새로운 정정 데이타로서 정정되어 출력된다. 또한, 판정 유닛(75)의 판정에 의해서 정정 유닛(72)에 의해서 출력된 정정된 데이타가 원 화상 데이타에 대한 압축 결과로서 적절한 것으로 판정하면, 정정 유닛(72)에 의해 공급된 정정된 데이타가 최적의 정정 데이타로서 버퍼 유닛(76)에 공급된다.The
버퍼 유닛(76)은 정정 유닛으로부터 공급된 최적의 정정 데이타를 기억하는 메모리(76A)를 포함한다. 또한, 버퍼 유닛(76)은 블록킹 유닛(77)의 메모리(77A)로부터 판독된 블록의 중심 픽셀에 대응하는 메모리(76A)에 기억된 최적의 정정 데이타의 데이타를 판독하여 이 데이타를 메모리(80)에 공급한다. 정정된 데이타의 1 프레임 부분이 메모리(76A)에 기억되어 있을 때 버퍼 유닛(76)이 이러한 사실을 나타내는 제어 신호를 블록킹 유닛(77)에 출력한다.The
학습용 화상은 최적의 정정된 데이타 산출부(70)에 대해서와 유사한 방식으로 1 프레임 단위로 각각 블록킹 유닛(77)에 공급된다. 블록킹 유닛(77)은 여기에 공급된 학습용의 화상을 기억하는 메모리(77A)를 포함한다. 또한, 블록킹 유닛(77)에 의해서 버퍼 유닛(76)으로부터 제어 신호가 수신될 때, 학습용 화상이 도 2의 블록킹 유닛(11) 경우와 동일한 방식으로 3×3 픽셀을 포함하는 블록으로 메모리(77A)에 기억된다. 이어서 학습용 화상의 이들 블록들이 순차 판독되어 ADRC 처리 유닛(78) 및 메모리(80)에 공급된다.The learning images are supplied to the blocking units 77 in units of one frame, respectively, in a manner similar to that for the optimal corrected data calculation unit 70. The blocking unit 77 includes a
블록이 메모리(77A)로부터 판독될 때 판독된 블록의 위치를 나타내는 제어 신호가 버퍼 유닛(76)에 공급된다. 이어서, 메모리(77A)로부터 판독된 3×3 픽셀 블록이 이 제어 신호에 기초하여 버퍼 유닛(76)에서 확인되고, 이 블록의 중심 픽셀에 대응하는 최적의 정정 데이타가 메모리(76A)로부터 판독된다. 즉, 특정한 3×3 픽셀 블록 및 이 블록에 대응하는 최적의 정정된 데이타가 동시에 메모리(80)에 공급된다. ADRC 처리 유닛(78) 및 클래스 분류 유닛(79)은 도 2의 ADRC 처리 유닛(12) 및 클래스 분류 유닛(13)과 동일한 구성을 갖는다. 이어서, 글래스 분류 유닛(79)에 의해서 출력된 블록킹 유닛(77)으로부터의 블록에 대한 클래스 정보가 어드레스로서 메모리(80)에 공급된다.When a block is read from the
메모리(80)는 클래스 분류 유닛(79)로부터 공급된 클래스 정보에 대응하는 어드레스에 버퍼 유닛(76)으로부터 공급된 최적의 정정 데이타 및 블록킹 유닛(77)으로부터 공급된 블록을 기억한다. 메모리(80)는 단일 어드레스에 복수의 정보를 기억할 수 있다. 따라서, 특정한 클래스 정보에 대응하는 최적의 정정된 데이타 및 블록들이 복수의 세트로서 기억될 수 있다.The
계산 유닛(81)은 학습용의 화상에 대한 3×3 블록을 포함하는 9개의 픽셀 y1, y2, ... , y9 및 메모리(80)에 기억된 상기 블록에 대응하는 최적의 정정된 데이타 y'를 판독하고, 계산 유닛(81)은 맵핑 계수 k1 내지 k9가 각 클래스에 대해서 얻어지고 메모리(82)에 공급되도록 최소 자능 방법을 적용한다. 이어서 메모리(82)가 이들 클래스에 대응하는 어드레스에 계산 유닛(81)으로부터 공급된 각 클래스에 대한 맵핑 계수 k1 내지 k9를 기억한다.The
이어서, 도 13과 관련하여 도 12의 학습(learning) 화상 처리 장치의 동작에 대해서 설명한다. Next, the operation of the learning image processing apparatus of FIG. 12 will be described with reference to FIG. 13.
학습용 화상이 입력되면 블록 유닛(77)의 메모리(77A)에 학습용 화상이 기억되고 또한 최적의 정정 데이타 산출부(70)에 공급된다. 학습용 화상이 수신되며, 최적의 정정된 데이타 산출부(70)가 학습용 화상에 대한 최적의 정정된 데이타를 계산한다(스텝 S31).When the learning image is input, the learning image is stored in the
스텝 S31이 도 14의 플로우챠트에 상세히 도시되어 있다. 도 14를 참조하면, 압축부(71)는 스텝 S41에서 학습용 화상을 1/9로 씨닝 아웃하여 압축된 데이타를 생성하여 적어도 초기에는 정정을 하지 않고 정정 유닛(72)을 통해서 이 데이타를 로컬 디코더(73)로 출력시킨다. 이어서, 원 화상 데이타에 대한 예측값이 정정 유닛(72)으로부터의 정정된 데이타에 기초하여 스텝 S42에서 로컬 디코더(73)에서 계산된다(즉, 로컬 복호화가 수행된다). (먼저, 상술한 바와 같이, 화상 데이타가 단순 씨닝 아웃되어 압축된 데이타를 제공한다). 이 예측된 값은 오차 산출부(74)에 공급된다.Step S31 is shown in detail in the flowchart of FIG. Referring to Fig. 14, the
원 화상 데이타에 대한 예측된 값이 로컬 디코더(73)로부터 수신되었을 때 오차 산출부(74)가 스텝 S43에서 원 화상 데이타에 대하여 로컬 디코더(73)으로부터의 예측값에 대한 예측 오차를 계산하여 오차 정보로서 이것을 판정 유닛(75)에 공급한다. 스텝 S44에서, 오차 정보가 오차 산출부(74)로부터 수신된 경우에, 판정 유닛(75)에 의해서 정정 유닛(72)으로부터 출력된 정정된 데이타가 이러한 오차 정보에 기초한 원 화상 데이타에 대한 압축 결과로서 적절한지에 대한 판정이 내려진다.When the predicted value for the original image data is received from the
즉, 오차 정보가 규정된 임계값도 보다 작은지에 대한 판정이 스텝 S44에서 내려진다. 스텝 S44에서의 판정 결과 오차 정보가 규정된 임계값도 보다 작다고 된 경우에 정정 유닛(72)에 의해서 출력된 정정된 데이타는 원 화상 데이타에 대한 압축 데이타로서의 사용이 적절치 못하다고 확인된다. 이어서, 스텝 S55에서, 판정 유닛(75)이 정정 유닛(72)을 제어하여 압축 유닛(71)에 의해서 출력된 압축 데이타를 정정한다. 정정 유닛(72)은 판정 유닛(75)의 제어하에 정정량(정정값 △)을 변경하여, 압축된 데이타를 정정하고 그 결과 정정된 데이타를 로컬 디코더(73)에 출력한다. 그 후에 스텝 S42로 처리가 복귀되어 반복 처리된다.That is, a determination is made in step S44 as to whether the error information is smaller than the prescribed threshold value. When the determination result at step S44 indicates that the error information is smaller than the prescribed threshold value, it is confirmed that the corrected data output by the
맵핑 계수의 변경에 대해서는 예를 들면 도 7에서 상술한 방법과 동일한 방법으로 압축된 데이타의 정정을 행하는 것이 가능하다. 한편, 스텝 S44의 판정 결과 오차 정보가 규정된 임계값 보다 작다고 판정된 경우에 정정 유닛(72)에 의해서 출력된 정정된 데이타가 원 화상 데이타에 대한 압축 결과로서 적절하다고 확인된다. 이어서 판정 유닛(75)은 규정된 임계값도 보다 작은 오차 정보가 정정 유닛(72)으로부터 멀어졌을 때에 대비하여 버퍼 유닛으로 최적의 정정 데이타로서 정정된 데이타를 출력한다. 이어서, 이 데이타가 버퍼 유닛(76)의 메모리(76A)에 기억되고 도 14의 처리가 복귀된다. As for the change of the mapping coefficient, for example, it is possible to correct the compressed data in the same manner as the method described above with reference to FIG. On the other hand, when it is determined in step S44 that the error information is smaller than the prescribed threshold value, it is confirmed that the corrected data output by the
오차 정보가 규정된 임계값도 보다 작은 경우에, 정정 데이타로서 정정된 압축 데이타가 최적의 정정된 데이타로서 메모리(76A)에 기억된다. 이 최적의 정정된 데이타는 규정된 임계값도 보다 작은 오차 정보를 가지며 거의 원 화상 데이타(소스 화상 데이타)와 동일한 화상이 예측값을 계산하도록 정정된 데이타에 의하여 얻어질 수 있다. In the case where the error information is smaller than the prescribed threshold value, compressed data corrected as correction data is stored in the
도 13으로 돌아가서, 최적의 정정 데이타의 1 프레임 부분이 메모리(76A)에 기억되어 있을 때, 버퍼 유닛(76)이 제어 신호를 블록킹 유닛(77)에 출력한다. 제어 신호가 버퍼 유닛(76)으로부터 수신된 경우에, 스텝 S32에서 블록킹 유닛(77)이 메모리(77A)에 기억된 학습용 화상을 3×3 픽셀 블록으로 분할한다. 이어서, 블록킹 유닛(77)이 메모리(77A)에 기억된 화상 학습용 블록을 판독해서 이들 블록을 ADRC 처리 유닛(78) 및 메모리(80)에 공급한다. Returning to FIG. 13, when one frame portion of the optimal correction data is stored in the
동시에, 메모리(77A)로부터 블록이 판독된 경우에, 블록킹 유닛(77)이 판독된 블록의 위치를 나타내는 제어 신호를 버퍼 유닛(76)으로 공급한다. 이어서 버퍼 유닛(76)이 이 제어 신호에 따라서 메모리(77A)로부터 판독된 3×3 픽셀 블록을 확인하고, 이들 블록들에 대해서 중심 픽셀이 대응하는 최적의 정정된 데이타를 판독해서 이들 데이타를 메모리(80)에 공급한다. At the same time, when a block is read from the
이어서 스텝 S33으로 처리는 진행되고 블록킹 유닛(77)으로부터의 블록이 ADRC 처리 유닛(78)에서 ADRC 처리 된 후에, 이 블록은 클래스 분류 유닛(79)에서 분류된다. 클래스 분류의 결과가 어드레스로서 메모리(80)에 공급된다. Processing then proceeds to step S33 and after the block from the blocking unit 77 is ADRC processed in the
스텝 S34에서, 메모리(80)에서 버퍼 유닛(76)으로부터 공급된 최적의 정정 데이타 및 블록킹 유닛(77)으로부터 공급된 블록(학습용 데이타)가 클래스 분류 유닛(79)으로부터 공급된 클래스 정보에 대응하는 어드레스에 대응하도록 기억된다.In step S34, the optimal correction data supplied from the
이어서 스텝 S35로 처리가 진행되어 가는데, 여기서는 1 프레임 부분에 대한 블록들 및 최적의 정정 데이타가 메모리(80)에 기억되어 있는지에 대한 판정이 내려진다. 스텝 S35에서의 판정 결과 1 프레임 부분에 대한 블록 및 최적의 정정된 데이타가 아직 메모리(50)에 기억되어 있지 않은 경우에, 다음 블록이 블록킹 유닛(77)으로부터 판독된다. 버퍼 유닛(76)으로부터 블록에 대응하는 최적의 정정된 데이타도 판독되고, 스텝 S33으로 처리가 복귀되어 여기서부터 처리가 반복된다. Processing then proceeds to step S35, where a determination is made as to whether blocks for one frame portion and optimal correction data are stored in the
스텝 S35에서의 판정 결과 블록 및 최적의 정정된 데이타의 1 프레임 부분이 메모리(80)에 기억되어 있는 것으로 판정된 경우에, 스텝 S36으로 처리가 진행되어 가고 학습용의 모든 화상에 대한 처리가 완료되었는지에 대한 판정이 내려진다. 스텝 S36에서의 판정 결과 학습용의 모든 화상에 대한 처리가 완료되지 않는 것으로 판정된 경우에, 스텝 S31로의 처리가 복귀되어 스텝 S31로부터의 처리가 다음 학습용 화상에 대해서 반복된다. If it is determined in step S35 that one block portion of the block and the optimal corrected data are stored in the
한편, 스텝 S36에서의 판정 결과 모든 학습용의 화상 처리가 완료된 것으로 판정이 내려진 경우에, 스텝 S37로 처리가 진행하고 계산 유닛(81)이 수학식 7에 도시된 규정식을 만족하도록 각 클래스에 대해서 메모리(80)에 기억된 최적의 정정된 데이타 및 블록들을 판독한다. 또한, 스텝 S38에서, 계산 유닛(81)이 상기 규정식을 풀어서 오차를 최소화하고 각 클래스의 맵핑 계수를 계산한다. 이어서 이들 맵핑 계수가 기억을 위해 메모리(82)에 공급되고(스텝 S39), 도 13의 처리가 완료된다. On the other hand, when it is determined that all the image processing for learning has been completed as a result of the determination in step S36, the process proceeds to step S37 for each class so that the
함수 f가 상술한 선형 1차식으로서 표현될 때, 메모리(82)에 기억된 맵핑 계수가 화상의 부호화를 위해서 도 2의 맵핑 계수 메모리(14)에 기억되게 된다. When the function f is expressed as the linear linear equation described above, the mapping coefficients stored in the
맵핑 계수를 얻기 위한 규정식의 수가 클래스 수를 사용하여 얻을 수 없는 경우도 있다. 이 경우에는 도 2의 계산 유닛(16)에서 예를 들면 블록킹 유닛(11)로부터 출력된 3×3 블록을 포함하는 9개의 픽셀, 즉 k1 내지 k9 = 1/9 등에 대한 평균값으로서 출력된 맵핑 계수가 오값(default values)으로 설정된다.In some cases, the number of expressions for obtaining the mapping coefficient cannot be obtained using the number of classes. In this case, the
이어서, 도 15와 관련하여 수신 장치(4)(도 1)의 구성에 대해서 설명한다. Next, with reference to FIG. 15, the structure of the receiving apparatus 4 (FIG. 1) is demonstrated.
재생된 기록 매체(2)에 기록된 부호화 데이타 혹은 전송 경로(3)을 통해서 송신된 부호화 데이타가 수신/재생 장치(91)에서 재생 혹은 수신되어 디코더(92)에 공급된다. The encoded data recorded on the reproduced
디코더(92)는 로컬 디코더(27)(도 9)의 엘리먼트에 대응하는 엘리먼트를 포함한다. 예측값은 로컬 디코더(27)가 동작하는 방식과 유사한 방식으로 정정된 데이타로부터 얻어진다. 예측값을 포함하는 화상은 복호화 화상으로서 출력된다. Decoder 92 includes elements corresponding to elements of local decoder 27 (FIG. 9). The prediction value is obtained from the corrected data in a manner similar to the manner in which the
정정된 데이타는 규정된 임계값 이하의 오차 정보를 가진 데이타이다. 결국, 원 화상 데이타와 거의 동일한 화상이 수신 장치(4)에서 얻어진다. The corrected data is data having error information below a prescribed threshold. As a result, an image almost identical to the original image data is obtained in the receiving
복호화 화상은 씨닝-아웃된 화상의 보간에 의해서 복호화하는 장치를 사용하는 통상의 보간을 행함으로써 도 15에 도시된 수신 장치(4) 없이도 수신측에서 얻어 질 수 있다. 그러나, 이 경우에 얻어지는 복호화 화상의 화질(해상도)은 열등하다.The decoded picture can be obtained at the receiving side without the receiving
본 발명의 실시예들은 많은 서로 다른 형태의 화상 신호들, 즉 표준 포맷(예를 들면, NTSC)의 텔레비젼 신호로부터 다량의 데이타를 포함하는 고품위 텔레비젼 신호에 이르기까지 이들 신호를 부호 및 복호화 하는데 사용될 수 있음을 주목해야 한다. 또한, 이들 실시예에서는, 비록 각각의 처리가 하나의 프레임 분에 대해서 행해지는 것으로서 설명되었지만, 1 필드, 혹은 2 혹은 그 이상의 프레임 분에 대해서 처리가 행해질 수 있다. Embodiments of the present invention can be used to encode and decode many different types of image signals, i.e., from television signals in standard format (e.g., NTSC) to high-definition television signals containing large amounts of data. It should be noted that. Also, in these embodiments, although each process is described as being performed for one frame, the process may be performed for one field or two or more frames.
게다가, 블록 부호화가 한번에 1 프레임의 화상에 대해서 행해지는 것으로 설명되었지만, 블록들은 복수의 시간-순차 프레임의 동일 위치의 픽셀들을 함께 조합함으로써 구성될 수도 있다. In addition, although block coding is described as being performed on one frame of image at a time, blocks may be constructed by combining pixels of the same position of a plurality of time-sequential frames together.
또한, 오차 정보를 오차의 자승합으로서 설명하였지만, 예를 들면 오차의 절대값 혹은 오차의 3승(혹은 그 이상의 고차)의 합이 오차 정보로서 사용될 수 있다. 어떤 형태의 정보가 오차 정보로서 사용될 것인지는 통계적 특정(예를 들면, 수렴)에 기초해서 결정될 수 있다. In addition, although the error information has been described as the square sum of the errors, for example, the absolute value of the error or the sum of the three powers (or higher) of the error can be used as the error information. Which type of information will be used as the error information can be determined based on statistical specificity (eg, convergence).
본 발명의 또 다른 실시예에 대해서 도 16 내지 도 18을 참조하여 설명한다. 제1 실시예와 다른 제2 실시예의 부분만이 이하 기술되어 있다. 구체적으로, 이제부터 도 16을 참조하면, 도 16에 도시된 화상 처리 장치와 도 7에 도시된 화상 처리 장치간의 차이는, 도 16에서는 메모리(21)에 기억된 학습용 화상 데이타가 로컬 디코더(27')에 제공되는 점이다. 도 7의 장치에서는 메모리(21)에 저장된 학습용 화상 데이타가 로컬 디코더(27)에 의해서 사용되지 않는다. Another embodiment of the present invention will be described with reference to FIGS. 16 to 18. Only parts of the second embodiment that are different from the first embodiment are described below. Specifically, referring now to FIG. 16, the difference between the image processing apparatus shown in FIG. 16 and the image processing apparatus shown in FIG. 7 is that in FIG. 16, the training image data stored in the
도 17을 참조하면, 학습용의 화상 데이타를 사용하는 로컬 디코더(27')의 상세 실시예가 도시되어 있다. 먼저, 도 9와 관련하여 상세히 설명한 바와 같이 로컬 디코더(27)는 예측 계수 ROM(45)에 기억되며 정정된 화상 데이타의 블록의 클래스 정보에 응답하는 ROM으로부터 제공된 학습된 예측 계수를 기초로 예측값을 생성함을 기억해야 한다. 반대로, 로컬 디코더(27')는 클래스 정보를 기초로 하고 또한 메모리 21(도 16)에 기억되고 이 메모리로부터 제공되는 디지탈 화상 데이타를 기초로 예측값을 생성하는 적응적 처리 유닛(45')을 포함한다. Referring to Fig. 17, a detailed embodiment of a local decoder 27 'that uses image data for learning is shown. First, as described in detail with reference to FIG. 9, the
이제부터 적응적 처리 유닛(45')의 상세한 동작의 예를 설명한다. 즉, 예를 들면 원 화상 데이타의 픽셀값 y에 대한 예측값이 예측값의 주변에서 수개의 픽셀 X1, X2, …,에 대한 픽셀값(이하 학습 데이타라 한다) 및 규정된 예측 계수 w1, w2, …,의 선형 결합에 의해서 정의된 선형 1차 결합 모델을 사용하여 얻어지는 것으로 간주하면, 예측값은 다음식으로 표현될 수 있다.An example of the detailed operation of the adaptive processing unit 45 'will now be described. That is, for example, the predicted value for the pixel value y of the original image data is several pixels X 1 , X 2 ,. Pixel values for, (hereinafter referred to as learning data) and the specified prediction coefficients w 1 , w 2 ,. When considered to be obtained using a linear first-order combining model defined by the linear combination of, the predicted value can be expressed by the following equation.
예측 계수 w의 세트를 포함하는 매트릭스 W, 학습 데이타 x의 세트를 포함하는 매트릭스 X 및 예측값의 세트를 포함하는 매트릭스 Y'가 다음과 같이 정의되면,If the matrix W comprising the set of prediction coefficients w, the matrix X comprising the set of training data x and the matrix Y 'comprising the set of prediction values are defined as follows:
다음과 같은 관측 방정식이 성립한다. The following observation equation holds.
그리고, 이 관측 방정식에 최소 자승 방법을 적용하면 원 화상 데이타의 픽셀값 y에 가까운 예측값이 얻어진다. 이때, 원 화상 데이타의 픽셀값의 세트 y(이하 교사 데이타라 한다)를 포함하는 매트릭스 Y 및 원 화상 데이타의 픽셀값 y의 예측값에 대한 잔차 e의 세트를 포함하는 매트릭스 E가 다음과 같이 정의되면, When the least square method is applied to this observation equation, a predicted value close to the pixel value y of the original image data is obtained. At this time, if the matrix Y including the set y of the pixel values of the original image data (hereinafter referred to as teacher data) and the matrix E including the set of the residual e with respect to the predicted value of the pixel value y of the original image data are defined as follows: ,
수학식 2로부터 다음의 잔차 방정식이 성립한다. The following residual equation is established from equation (2).
이 경우, 원 화상 데이타의 픽셀값 y에 가까운 예측값을 얻기 위한 예측 계수 Wi는 자승 오차를 최소로 하기 위해 얻어질 수 있다. In this case, the prediction coefficient Wi for obtaining a prediction value close to the pixel value y of the original image data can be obtained to minimize the square error.
따라서, 자승 오차는 제로(0)가 되도록 예측 계수 Wi의 사용에 의해서 미분된다. 즉, 다음의 식을 성립시키는 예측 계수 Wi는 원 화상 데이타의 픽셀값 y에 가까운 예측값을 얻기 위한 최적값이 된다.Therefore, the squared error is differentiated by the use of the prediction coefficient W i to be zero. In other words, the prediction coefficient W i which holds the following equation is an optimum value for obtaining a prediction value close to the pixel value y of the original image data.
다음식은 미분 방정식(3)을 예측 계수 Wi로 미분함으로써 성립된다.The following equation is established by differentiating the differential equation (3) with the prediction coefficient W i .
수학식 6은 수학식 4 및 수학식 5로부터 얻어질 수 있다.
다음의 정규 방정식은 상기 수학식 6으로부터 상기 수학식 3에서 생성하는 학습 데이타 x, 예측 계수 w, 교사 데이타 y 및 잔차 e 간의 관계를 고려함으로써 얻어질 수 있다. The following normal equation can be obtained by considering the relationship between the learning data x, the prediction coefficient w, the teacher data y, and the residual e generated in
수학식 7의 정규식은 얻어질 예측 계수 W의 수와 동일수 만큼을 갖는다. 최적의 예측 계수 W는 수학식 7을 풀므로써 얻어질 수 있다. 수학식 7은 예를 들면 릴리이즈 방법(release method)(Gauss Jordan의 소거법 등)을 적용하면 풀릴 수 있다. The regular expression of
상기 적응적 처리에 있어서, 최적의 예측 계수 w가 얻어지고, 원 화상 데이타에 대한 픽셀값 y에 가까운 예측값이 이러한 예측 계수 w 사용함으로써 수학식 1로부터 얻어진다. 이러한 적응적 처리는 로컬 디코더(27)에서 행해질 수 있다. 이때에는 로컬 디코더(27)에 예측 계수 ROM를 제공할 필요가 없다. In the adaptive processing, an optimum prediction coefficient w is obtained, and a prediction value close to the pixel value y for the original image data is obtained from equation (1) by using this prediction coefficient w. This adaptive processing can be done at the
적응적 처리(예측 계수 ROM(45)이 사용될 때 적응적 처리가 포함될 수도 있다)는 씨닝-아웃된 화상에 포함되어 있지 않은 원 화상 데이타에 포함된 성분이 재생된다는 점에서 보간 처리와는 차이가 있다. 즉, 수학식 1만이 적응적 처리에 사용된 경우에 이것은 소위 보간 필터를 사용한 보간 처리와 같다. 그러나, 이 보간 필터의 탭 수(tap number)에 대응하는 예측 계수 w가 교사 데이타 y를 사용하는 학습에 의해서 얻어지므로, 원 화상 데이타에 포함된 성분이 재생될 수 있다. 이 적응적 처리는 소위 화상을 재생하는 동작 처리라고 말할 수 있다. Adaptive processing (which may include adaptive processing when the
이제부터 도 18을 참조하면, 이 플로우챠트는 도 17의 로컬 디코더(27') 이후의 처리를 나타내는 것이다. 스텝 S121에서 클래스 분류용 블록킹 유닛(41)이 정정된 화상 데이타를 블록한다. 이어서, 스텝 S122에서 ADRC 처리 유닛(43)이 정정된 화상 데이타의 블록들에 대한 ADRC 처리를 행한다. 스텝 S123에서, 클래스 분류 유닛(44)은 ADRC 처리 유닛(43)의 출력에 따라 정정된 화상 데이타 블록을 분류한다. 스텝 S124에서, 적응적 처리 유닛(45')은 각 클래스(적응적 처리 유닛(45')의 내부 사용용)에 대한 예측 계수를 계산하고 예측값을 계산한다. 스텝 S125에서, 예측값은 로컬 디코더(27')의 적응적 처리 유닛(45')로부터 출력된다.Referring now to FIG. 18, this flowchart shows processing after the local decoder 27 'in FIG. In step S121, the classifying blocking
이제까지 특정한 실시예와 관련하여 본 발명을 설명하였지만, 본 기술 분야에 숙련된 자는 그 교시 내용으로부터 이탈되지 않는 범위 내에서 많은 변경이 가능하다는 것을 확신하게 될 것이다. 그러나, 모두 이러한 변경의 의도도 다음의 청구 범위의 영역 내에 포함시키고자 한다. While the present invention has been described with reference to specific embodiments, it will be apparent to those skilled in the art that many changes may be made without departing from the teachings. However, all of such modifications are intended to be included within the scope of the following claims.
도 1은 본 발명을 화상 처리 시스템에 적용한 일 실시예의 구성을 나타내는 블록도.1 is a block diagram showing a configuration of an embodiment in which the present invention is applied to an image processing system.
도 2는 도 1의 송신 장치의 구성예를 나타내는 블록도.FIG. 2 is a block diagram illustrating an exemplary configuration of the transmitter of FIG. 1. FIG.
도 3은 ADRC 처리를 나타내는 도면.3 shows ADRC processing.
도 4는 클래스 분류 처리를 나타내는 도면.4 is a diagram illustrating class classification processing.
도 5는 도 2의 송신 장치의 동작을 나타내는 플로우 챠트.FIG. 5 is a flowchart showing the operation of the transmitter of FIG. 2; FIG.
도 6은 도 2의 블록킹 유닛(blocking unit)의 처리를 나타내는 도면.FIG. 6 shows a process of the blocking unit of FIG. 2. FIG.
도 7은 맵핑 계수를 얻기 위한 학습용 화상 처리 장치의 제1 실시예의 구성을 나타내는 블륵도.Fig. 7 is a block diagram showing a configuration of a first embodiment of a learning image processing apparatus for obtaining mapping coefficients.
도 8은 도 7의 화상 처리 장치의 동작을 나타내는 플로우 챠트.FIG. 8 is a flowchart showing an operation of the image processing apparatus of FIG. 7.
도 9는 도 7의 로컬 디코더(27)의 구성예를 나타내는 블륵도.9 is a block diagram showing a configuration example of the
도 10은 도 9의 로컬 디코더(27)의 처리를 나타내는 플로우 챠트.FIG. 10 is a flowchart showing processing of the
도 11은 예측 계수를 얻기 위한 학습을 실행하는 화상 처리 장치의 일 실시예의 구성을 나타내는 블륵도.11 is a block diagram showing a configuration of an embodiment of an image processing apparatus that performs learning to obtain prediction coefficients.
도 12는 맵핑 계수를 얻기 위한 학습을 실행하는 화상 처리 장치의 제2 실시예의 구성을 나타내는 블록도.Fig. 12 is a block diagram showing the construction of a second embodiment of an image processing apparatus that performs learning to obtain mapping coefficients.
도 13은 도 12의 화상 처리 장치의 동작을 나타내는 플로우 챠트.FIG. 13 is a flowchart showing an operation of the image processing apparatus of FIG. 12. FIG.
도 14는 도 13에서 스텝 S31의 상세한 처리를 나타내는 플로우 챠트.FIG. 14 is a flow chart showing the detailed process of step S31 in FIG.
도 15는 도 1의 수신 장치(4)의 구성예를 나타내는 블록도.FIG. 15 is a block diagram illustrating an exemplary configuration of the receiving
도 16은 맵핑 계수를 얻기 위한 학습용 화상 처리 장치의 다른 실시예의 구성을 나타내는 블록도.Fig. 16 is a block diagram showing the construction of another embodiment of a learning image processing apparatus for obtaining mapping coefficients.
도 17은 도 16의 화상 처리 장치의 동작을 나타내는 플로우 챠트.FIG. 17 is a flowchart showing an operation of the image processing apparatus of FIG. 16. FIG.
도 18은 도 16의 로컬 디코더(27')의 구성예를 나타내는 블록도.FIG. 18 is a block diagram showing an example of the configuration of a local decoder 27 'of FIG.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
1 : 송신 장치1: transmitting device
2 : 기록 매체2: recording medium
3 : 전송 경로3: transmission path
4 : 수신 장치4: receiving device
11 : 블록킹 유닛11: blocking unit
12 : ADRC 처리 유닛12: ADRC processing unit
13 : 클래스 분류 유닛13: class classification unit
14 : 맵핑 계수 메모리14: mapping coefficient memory
15 : 지연 유닛15: delay unit
16 : 계산 유닛16: calculation unit
17 : 송신/수신 유닛17: transmit / receive unit
21 : 메모리21: memory
22 : 블록킹 유닛22: blocking unit
23 : ADRC 처리 유닛23: ADRC processing unit
24 : 클래스 분류 유닛24: class classification unit
27 : 로컬 디코더27: local decoder
28 : 오차 산출부28: error calculation unit
29 : 판정 유닛29: judgment unit
30 : 맵핑 계수 세팅 유닛30: mapping coefficient setting unit
31 : 맵핑 계수 메모리31: mapping coefficient memory
Claims (69)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970033456A KR100598754B1 (en) | 1996-07-17 | 1997-07-18 | Device for coding original image data, device for decoding coded image data, method for coding original image data, method for decoding coded image data, method for transmitting image data, computer-readable storing media |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP96-206553 | 1996-07-17 | ||
KR1019970033456A KR100598754B1 (en) | 1996-07-17 | 1997-07-18 | Device for coding original image data, device for decoding coded image data, method for coding original image data, method for decoding coded image data, method for transmitting image data, computer-readable storing media |
Publications (2)
Publication Number | Publication Date |
---|---|
KR980013426A KR980013426A (en) | 1998-04-30 |
KR100598754B1 true KR100598754B1 (en) | 2006-10-24 |
Family
ID=41748758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970033456A KR100598754B1 (en) | 1996-07-17 | 1997-07-18 | Device for coding original image data, device for decoding coded image data, method for coding original image data, method for decoding coded image data, method for transmitting image data, computer-readable storing media |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100598754B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0571180A2 (en) * | 1992-05-22 | 1993-11-24 | Sony Corporation | Digital data conversion equipment |
US5394196A (en) * | 1991-04-05 | 1995-02-28 | Thomson-Csf | Method of classifying the pixels of an image belonging to a sequence of moving images and method of temporal interpolation of images using the said classification |
JPH07283948A (en) * | 1995-03-27 | 1995-10-27 | Konica Corp | Compressing device for gradation picture data |
-
1997
- 1997-07-18 KR KR1019970033456A patent/KR100598754B1/en not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5394196A (en) * | 1991-04-05 | 1995-02-28 | Thomson-Csf | Method of classifying the pixels of an image belonging to a sequence of moving images and method of temporal interpolation of images using the said classification |
EP0571180A2 (en) * | 1992-05-22 | 1993-11-24 | Sony Corporation | Digital data conversion equipment |
JPH07283948A (en) * | 1995-03-27 | 1995-10-27 | Konica Corp | Compressing device for gradation picture data |
Also Published As
Publication number | Publication date |
---|---|
KR980013426A (en) | 1998-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100529662B1 (en) | Image coding and decoding using mapping coefficients corresponding to class information of pixel blocks | |
US6292591B1 (en) | Image coding and decoding using mapping coefficients corresponding to class information of pixel blocks | |
JPH1032837A (en) | Image processing device and method and image encoding device and method | |
EP0820195B1 (en) | Image coding using sub-sampling, classification of pixel blocks and association of mapping coefficients | |
US6192076B1 (en) | Image coding and decoding using mapping coefficients corresponding to class information of pixel blocks | |
US6438267B1 (en) | Image compression method | |
KR100574732B1 (en) | Image coding apparatus, image coding method, image decoding method, image decoding apparatus, image data transmitting method and recording medium | |
KR100537123B1 (en) | Picture signal coding device, picture signal coding method, picture signal decoding device, picture signal decoding method, and recording medium | |
WO1998030028A1 (en) | Picture coding device, picture coding method, picture decoding device, picture decoding method, and recording medium | |
KR100598754B1 (en) | Device for coding original image data, device for decoding coded image data, method for coding original image data, method for decoding coded image data, method for transmitting image data, computer-readable storing media | |
JP3912558B2 (en) | Image encoding apparatus, image encoding method, and recording medium | |
JP3747970B2 (en) | Image encoding device, image encoding method, image decoding device, and image decoding method | |
JP4582416B2 (en) | Image coding apparatus and image coding method | |
JP3912628B2 (en) | Image encoding device, image encoding method, image encoding and decoding system, image encoding and decoding method, and recording medium | |
KR100674068B1 (en) | Image coding apparatus, image coding method, image decoding method, image decoding apparatus, image data transmitting method and recording medium | |
JP4487900B2 (en) | Image processing system | |
JPH10243406A (en) | Image coder, image coding method, image decoder, image decoding method and recording medium | |
EP1298934A1 (en) | Apparatus and method for image coding and decoding | |
JP4496494B2 (en) | Image coding apparatus and image coding method | |
JPH1093981A (en) | Image encoder and image encoding method, image decoder and image decoding method, transmitting method and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130621 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20140623 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |