KR100667612B1 - 이미지 처리 장치, 이미지 처리 방법 및 저장 매체 - Google Patents

이미지 처리 장치, 이미지 처리 방법 및 저장 매체 Download PDF

Info

Publication number
KR100667612B1
KR100667612B1 KR1020000030985A KR20000030985A KR100667612B1 KR 100667612 B1 KR100667612 B1 KR 100667612B1 KR 1020000030985 A KR1020000030985 A KR 1020000030985A KR 20000030985 A KR20000030985 A KR 20000030985A KR 100667612 B1 KR100667612 B1 KR 100667612B1
Authority
KR
South Korea
Prior art keywords
pixels
correlation
information
decoding
image
Prior art date
Application number
KR1020000030985A
Other languages
English (en)
Other versions
KR20010007261A (ko
Inventor
콘도테츠지로
고바야시나오키
Original Assignee
소니 가부시끼 가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP16053099A external-priority patent/JP4099687B2/ja
Priority claimed from JP16052999A external-priority patent/JP4092608B2/ja
Application filed by 소니 가부시끼 가이샤 filed Critical 소니 가부시끼 가이샤
Publication of KR20010007261A publication Critical patent/KR20010007261A/ko
Application granted granted Critical
Publication of KR100667612B1 publication Critical patent/KR100667612B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0028Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
    • G06T1/0035Output size adaptive watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0028Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0051Embedding of the watermark in the spatial domain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0061Embedding of the watermark in each block of the image, e.g. segmented watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0065Extraction of an embedded watermark; Reliable detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0203Image watermarking whereby the image with embedded watermark is reverted to the original condition before embedding, e.g. lossless, distortion-free or invertible watermarking

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

이미지 처리 장치는 오버헤드(overhead) 없이 이미지 데이터에 정보를 매입한다. 이미지 처리 장치는 이미지 데이터를 형성하는 픽셀들의 일부를 선택하기 위한 선택 유닛을 포함한다. 변경 유닛은 정보에 따라 선택된 픽셀들의 값들의 비트들을 교환(swapping)함으로써 선택 유닛에 의해 선택된 픽셀들에 정보를 매입한다.
이미지 처리 장치, 픽셀, 선택된 유닛, 저장 매체

Description

이미지 처리 장치, 이미지 처리 방법 및 저장 매체 {IMAGE PROCESSING APPARATUS, IMAGE PROCESSING METHOD, AND STORAGE MEDIUM}
도 1은 본 발명을 포함하는 이미지 전송 시스템의 구성예를 설명하는 블록도.
도 2는 도 1에 도시된 매입 코더(coder)(3)에서 매입되는 이미지를 설명하는 도면.
도 3은 거리와 상관관계(correlation) 사이의 관계로 정보의 에너지 분포를 설명하고, 또한 정보의 일부 라인을 교환(swapping)함으로써 에너지 분포가 파괴되는 것을 설명하는 도면.
도 4는 도 1에 도시된 매입 코더(3)의 하드웨어 구성예를 설명하는 블록도.
도 5는 본 발명의 제 1 실시예에 따라 도 4에 도시된 매입 코더(3)의 기능적인 구성을 설명하는 블록도.
도 6은 도 5에 도시된 매입 코더(3)에 의해 실행되는 매입 코딩 처리를 설명하는 흐름도.
도 7은 도 6에 도시된 매입 코딩 처리를 실행할 때 각 이미지 블록에 대해 선택되는 픽셀을 설명하고, 또한 선택 픽셀을 회전시키는 것에 의한 데이터 매입 동작을 설명하는 도면.
도 8은 도 1에 도시된 디코더(6)의 하드웨어 구성예를 설명하는 블록도.
도 9는 본 발명의 제 1 실시예에 따라 도 8에 도시된 디코더(6)의 기능적인 구성을 설명하는 블록도.
도 10은 도 9에 도시된 디코더(6)에 의해 실행되는 디코딩 처리를 설명하는 흐름도.
도 11은 도 10에 도시된 디코딩 처리를 실행할 때 각 이미지 블록에 대해 선택되는 픽셀을 설명하고, 또한 선택 픽셀을 역회전시키는 것에 의한 데이터 디코딩 동작을 설명하는 도면.
도 12는 도 10에 도시된 단계(S15)에서 실행되는 픽셀간의 차이를 계산하는 처리를 설명하는 도면.
도 13은 본 발명의 제 2 실시예에 따라 도 4에 도시된 매입 코더(3)의 기능적인 구성을 설명하는 블록도.
도 14는 도 13에 도시된 매입 코더(3)에 의해 실행되는 매입 코딩 처리를 설명하는 흐름도.
도 15는 도 14에 도시된 매입 코딩 처리를 실행할 때 각 이미지 블록에 대해 선택되는 픽셀을 설명하고, 또한 선택 픽셀 중 하나와 추가 정보 사이에서 배타적 논리합(exclusive-OR)을 계산하고 선택 픽셀 중 하나와 반전 추가 정보 사이에서 배타적 논리합을 계산하는 것에 의한 데이터 매입 동작을 설명하는 도면.
도 16은 본 발명의 제 2 실시예에 따라 도 8에 도시된 디코더(6)의 기능적인 구성을 설명하는 블록도.
도 17은 도 16에 도시된 디코더(6)에 의해 실행되는 디코딩 처리를 설명하는 흐름도.
도 18은 도 17에 도시된 디코딩 처리를 실행할 때 각 이미지 블록에 대해 선택되는 픽셀을 설명하고, 또한 선택 픽셀 중 하나와 추가 정보 사이에서 배타적 논리합을 계산하고 선택 픽셀 중 하나와 반전 추가 정보 사이에서 배타적 논리합을 계산하는 것에 의한 데이터 디코딩 동작을 설명하는 도면.
도 19는 도 17에 도시된 단계(S45)에서 실행되는 픽셀간의 차이를 계산하는 처리를 설명하는 도면.
도 20은 도 17에 도시된 디코딩 동작을 실행할 때 각 이미지 블록에 대해 선택되는 픽셀을 설명하고, 또한 선택 픽셀 중 하나와 추가 정보 사이에서 배타적 논리합을 계산하고 반전된 선택 픽셀 중 하나와 추가 정보 사이에서 배타적 논리합을 계산하는 것에 의한 데이터 매입 동작을 설명하는 도면.
도 21a는 본 발명의 처리를 실시하는 프로그램이 설치될 컴퓨터를 설명하는 도면.
도 21b는 본 발명의 처리를 실시하는 프로그램이 저장될 저장 매체를 설명하는 도면.
도 21c는 본 발명의 처리를 실시하는 프로그램이 위성이나 네트워크를 통해 컴퓨터에 배급되는 것을 설명하는 도면.
도 22는 본 발명의 처리를 실시하는 프로그램이 설치될 컴퓨터의 예를 설명하는 블록도.
* 도면의 주요 부분에 대한 부호의 설명*
10: 코딩 장치 20: 디코딩 장치
33: 프로그램 메모리 42: 비트 회전 유닛
61: 블록 분할 유닛 62: 비트 역회전 유닛
63: 회전 비트 레지스터 69: 비교기
171: 디코딩된 이미지 메모리 131: 네트워크
본 발명은 일반적으로 이미지 처리 장치들, 이미지 처리 방법들, 및 저장 매체에 관한 것이다. 특히, 본 발명은 데이터량을 증가시키지 않고 재생된 이미지들의 질을 최소로 손실시켜 정보를 이미지들에 매입하는 이미지 처리 장치 및 이미지 처리 방법에 관한 것이다. 본 발명은 또한 상술된 방법을 저장하는 저장 매체에 관한 것이다.
데이터량을 증가시키지 않고 정보를 매입하는 기술 중 하나는 예를 들어, 디지털 오디오 데이터의 최하위 비트(LSB) 또는 하단 2 비트를 매입되는 정보로 변환시키는 것이다. 이 기술에서는 사운드의 질에 현저히 영향을 주지 않는 디지털 오디오 데이터의 하단 비트가 단순히 매입되는 정보로 대치된다. 따라서, 디지털 오디오 데이터가 재생될 때, 이는 하단 비트를 원래 상태로 회복하지 않고 출력된다. 특히, 정보가 매입된 하단 비트를 원래 상태로 회복하는 것이 어렵고, 또한 하단 비트가 사운드의 질에 현저하게 영향을 주지 않으므로, 디지털 오디오 데이터는 그에 매입된 정보를 포함하여 출력된다.
그러나, 상술된 기술에 따라, 원래 신호와 다른 신호가 불리하게 출력되므로, 어느 정도는 신호가 오디오 데이터인 경우 사운드의 질에 영향을 주고, 신호가 비디오 데이터인 경우 이미지의 질에 영향을 준다.
따라서, 본 발명의 목적은 상술된 문제점을 해결하는 것이다.
상기 목적을 이루기 위해서는 본 발명의 한 특성에 따라, 이미지 데이터에 정보를 매입하는 이미지 처리 장치가 제공된다. 이미지 처리 장치는 이미지 데이터를 형성하는 일부 픽셀을 선택하는 선택 유닛과, 정보에 따라 선택된 픽셀값의 비트를 교환(swapping)함으로써 선택 유닛에 의해 선택된 픽셀에 정보를 매입하는 변경 유닛을 포함한다.
본 발명의 또 다른 특성에 따라, 정보가 매입된 코딩된 이미지 데이터를 원래 이미지 데이터 및 정보로 디코딩하는 이미지 처리 장치가 제공된다. 이미지 처리 장치는 코딩된 이미지 데이터를 형성하는 일부 픽셀을 선택하는 선택 유닛을 포함한다. 변경 유닛은 선택 유닛에 의해 선택된 픽셀의 비트를 교환한다. 상관관계(correlation) 계산 유닛은 선택 유닛에 의해 선택된 픽셀 이외의 픽셀과 변경된 픽셀 사이의 상관관계를 계산한다. 결정 유닛은 상관관계 계산 유닛에 의해 계산된 상관관계에 기초하여, 선택된 픽셀값이 변경될 양이고 선택된 픽셀을 디코딩하는데 사용되는 양을 결정한다. 디코딩 유닛은 결정 유닛에 의해 결정된 양에 기초하여 선택된 픽셀을 디코딩하고, 선택된 픽셀에 매입된 정보를 디코딩한다.
본 발명의 또 다른 특성에 따라, 정보가 매입된 코딩된 이미지 데이터를 원래 이미지 데이터 및 정보로 디코딩하는 이미지 처리 장치가 제공된다. 이미지 처리 장치는 코딩된 이미지 데이터를 형성하는 일부 픽셀을 선택하는 선택 유닛을 포함한다. 계산 유닛은 선택 유닛에 의해 선택된 픽셀값과 미리 정해진 데이터 사이의 배타적 논리합(exclusive-OR)을 계산한다. 상관관계 계산 유닛은 선택된 픽셀 이외의 픽셀과 계산 유닛에 의해 계산된 픽셀 사이의 상관관계를 계산한다. 결정 유닛은 상관관계 계산 유닛에 의해 계산된 상관관계에 기초하여, 선택된 픽셀을 디코딩하기 위해 선택된 픽셀과 배타적 논리합을 계산하는데 사용되는 미리 정해진 데이터를 결정한다. 디코딩 유닛은 결정 유닛에 의해 결정된 데이터에 기초하여 선택된 픽셀을 디코딩하고, 선택된 픽셀에 매입된 정보를 디코딩한다.
본 발명의 또 다른 특성에 따라, 이미지 데이터에 정보를 매입하는 이미지 처리 방법이 제공된다. 이미지 처리 방법은 이미지 데이터를 형성하는 일부 픽셀을 선택하는 선택 단계와, 정보에 따라 선택된 픽셀값의 비트를 교환함으로써 선택된 단계에서 선택된 픽셀에 정보를 매입하는 매입 단계를 포함한다.
본 발명의 또 다른 특성에 따라, 정보가 매입된 코딩된 이미지 데이터를 원래 이미지 데이터 및 정보로 디코딩하는 이미지 처리 방법이 제공된다. 이미지 처리 방법은: 코딩된 이미지 데이터를 형성하는 일부 픽셀을 선택하는 선택 단계; 선택 단계에서 선택된 픽셀값의 비트를 교환하는 교환 단계; 선택된 픽셀 이외의 픽셀과 교환된 픽셀 사이의 상관관계를 계산하는 상관관계 계산 단계; 상관관계 계산 단계에서 계산된 상관관계에 기초하여, 선택된 픽셀값이 변경되는 양이고 선택된 픽셀을 디코딩하는데 사용되는 양을 결정하는 결정 단계; 및 결정 단계에서 결정된 양에 기초하여 선택된 픽셀을 디코딩하고, 선택된 픽셀에 매입된 정보를 디코딩하는 디코딩 단계를 포함한다.
본 발명의 또 다른 특성에 따라, 정보가 매입된 코딩된 이미지 데이터를 원래 이미지 데이터 및 정보로 디코딩하는 이미지 처리 방법이 제공된다. 이미지 처리 방법은 코딩된 이미지 데이터를 형성하는 일부 픽셀을 선택하는 선택 단계; 선택 단계에서 선택된 픽셀값과 미리 정해진 데이터 사이의 배타적 논리합을 계산하는 계산 단계; 선택된 픽셀 이외의 픽셀과 계산 단계에서 계산된 픽셀 사이의 상관관계를 계산하는 상관관계 계산 단계; 상관관계 계산 단계에서 계산된 상관관계에 기초하여, 선택된 픽셀을 디코딩하기 위해 선택된 픽셀과 배타적 논리합을 계산하는데 사용되는 미리 정해진 데이터를 결정하는 결정 단계; 및 결정 단계에서 결정된 데이터에 기초하여 선택된 픽셀을 디코딩하고, 선택된 픽셀에 매입된 정보를 디코딩하는 디코딩 단계를 포함한다.
본 발명의 또 다른 특성에 따라, 이미지 데이터에 정보를 매입하기 위한 컴퓨터 제어 프로그램을 저장하는 저장 매체가 제공된다. 프로그램은 이미지 데이터를 형성하는 일부 픽셀을 선택하는 선택 단계와, 정보에 따라 선택된 픽셀값의 비트를 교환함으로써 선택된 단계에서 선택된 픽셀에 정보를 매입하는 매입 단계를 포함한다.
본 발명의 또 다른 특성에 따라, 정보가 매입된 코딩된 이미지 데이터를 원래 이미지 데이터 및 정보로 디코딩하기 위한 컴퓨터 제어 프로그램을 저장하는 저장 매체가 제공된다. 프로그램은: 코딩된 이미지 데이터를 형성하는 일부 픽셀을 선택하는 선택 단계; 선택 단계에서 선택된 픽셀값의 비트를 교환하는 교환 단계; 선택된 픽셀 이외의 픽셀과 교환된 픽셀 사이의 상관관계를 계산하는 상관관계 계산 단계; 상관관계 계산 단계에서 계산된 상관관계에 기초하여, 선택된 픽셀값이 변경되는 양이고 선택된 픽셀을 디코딩하는데 사용되는 양을 결정하는 결정 단계; 및 결정 단계에서 결정된 양에 기초하여 선택된 픽셀을 디코딩하고, 선택된 픽셀에 매입된 정보를 디코딩하는 디코딩 단계를 포함한다.
본 발명의 또 다른 특성에 따라, 정보가 매입된 코딩된 이미지 데이터를 원래 이미지 데이터 및 정보로 디코딩하기 위한 컴퓨터 제어 프로그램을 저장하는 저장 매체가 제공된다. 프로그램은 코딩된 이미지 데이터를 형성하는 일부 픽셀을 선택하는 선택 단계; 선택 단계에서 선택된 픽셀값과 미리 정해진 데이터 사이의 배타적 논리합을 계산하는 계산 단계; 선택된 픽셀 이외의 픽셀과 계산 단계에서 계산된 픽셀 사이의 상관관계를 계산하는 상관관계 계산 단계; 상관관계 계산 단계에서 계산된 상관관계에 기초하여, 선택된 픽셀을 디코딩하기 위해 선택된 픽셀과 배타적 논리합을 계산하는데 사용되는 미리 정해진 데이터를 결정하는 결정 단계; 및 결정 단계에서 결정된 데이터에 기초하여 선택된 픽셀을 디코딩하고, 선택된 픽셀에 매입된 정보를 디코딩하는 디코딩 단계를 포함한다.
본 발명은 바람직한 실시예를 통해 첨부된 도면을 참고로 이후 상세히 설명된다.
도 1은 본 발명을 포함하는 이미지 전송 시스템을 설명하는 도면이다. 본 명세서에서, "시스템"은 논리적으로 다수의 장치로 형성된 유닛이고, 장치가 같은 하우징(housing)에 포함될 필요는 없다.
도 1을 참고로, 이미지 전송 시스템은 코딩 장치(10) 및 디코딩 장치(20)로 형성된다. 코딩 장치(10)는 예를 들면, 이미지를 코딩하여 코딩된 데이터를 출력한다. 디코딩 장치(20)는 코딩된 데이터로부터 원래 이미지를 재생한다.
특별히, 이미지 데이터베이스(1)는 코딩된 이미지(예를 들면, 디지털 이미지)를 저장하고, 이미지는 이미지 데이터베이스(1)로부터 판독되어 매입 코더(embedding coder)(3)에 공급된다. 추가 정보 데이터베이스(2)는 코딩된 이미지에 매입되는 정보인 추가 정보(디지털 데이터)를 저장한다. 추가 정보는 추가 정보 데이터베이스(2)로부터 판독되어 매입 코더(3)에 공급된다.
이미지 데이터베이스(1)로부터 이미지를 수신하고 추가 정보 데이터베이스(2)로부터 추가 정보를 수신하면, 매입 코더(3)는 이미지 데이터베이스(1)로부터 공급된 이미지의 에너지 분포를 사용하여 코딩된 이미지가 디코딩될 수 있도록 추가 정보 데이터베이스(2)로부터 공급된 추가 정보에 따라 이미지를 코딩한다. 즉, 매입 코더(3)는 이미지의 에너지 분포를 사용하여 코딩된 이미지가 디코딩될 수 있도록 이미지에 추가 정보를 매입하여 이미지를 코딩하고, 코딩된 데이터를 출력한다. 이어서, 코딩된 데이터는 자기-광학 디스크, 자기 디스크, 광학 디스크, 자기 테이프, PD 디스크, 또는 반도체 메모리와 같은 저장 매체(4)에 기록된다. 다른 방법으로, 코딩된 데이터는 지상 방송 신호, 위성 방송 신호, 케이블 텔레비전CATV) 네트워크, 인터넷, 또는 공중 네트워크와 같은 전송 매체(5)를 통해 디코딩 장치(20)에 전송될 수 있다.
디코딩 장치(20)는 저장 매체(4)나 전송 매체(5)를 통해 제공된 코딩된 데이터가 수신되는 디코더(6)로 형성된다. 디코더(6)는 또한 이미지의 에너지 분포를 사용하여 코딩된 데이터를 원래 이미지 및 추가 정보로 디코딩한다. 디코딩된 이미지는 이어서 모니터(도시되지 않은)에 공급되어 디스플레이된다. 디코딩된 추가 정보는 미리 정해진 처리를 실행하는데 사용된다.
이후에는 도 1에 도시된 매입 코더(3)에 의해 실행되는 코딩 동작 및 디코더(6)에 의해 실행되는 디코딩 동작의 원리가 설명된다.
일반적으로, "정보"라 칭하여지는 것은 에너지(엔트로피) 분포를 갖고, 정보(가치있는 정보)로 식별된다. 특별히, 예를 들어 경치를 촬영하여 구해진 이미지는 경치의 이미지로 식별될 수 있다. 이는 이미지(이미지를 형성하는 픽셀의 값)가 그 장면에 대응하는 에너지 분포를 소유하기 때문이다. 에너지 분포를 갖지 않는 이미지는 단순히 잡음이고, 정보로 사용되지 못한다.
결과적으로, 가치있는 정보가 소유하는 에너지 분포가 특정한 동작을 실행함으로써 파괴되더라도, 원래 정보는 파괴된 에너지 분포를 원래 상태로 회복함으로써 재생될 수 있다. 즉, 정보를 코딩하여 구해진 코딩된 데이터는 정보에 본래 주어지는 에너지 분포를 사용하여 원래 정보로 디코딩될 수 있다.
정보의 에너지 분포는 예를 들면, 상관관계로 나타내질 수 있다. 정보의 상관관계는 정보의 성분 사이의 상관관계(예를 들어, 정보가 이미지인 경우, 이미지를 형성하는 픽셀이나 라인), 즉 정보를 형성하는 성분 사이의 거리나 자기 상관관계(self-correlation)이다.
도 2에 도시된 바와 같이, H 라인으로 형성된 이미지가 한 예로 취해진다. 제1 라인과 또 다른 라인 사이의 상관관계에 대해, 도 3의 (A)에서 설명되는 바와 같이, 제 1 라인에 가깝게 위치하는 라인(도 2에 도시된 이미지 중 상단 라인)에 대한 제 1 라인의 상관관계는 크다. 반대로, 제 1 라인에서 멀리 위치하는 라인(도 2에 도시된 이미지 중 하단 라인)에 대한 제 1 라인의 상관관계는 작다. 다른 말로 하면, 도 2에 도시된 이미지는 제 1 라인에 가까운 라인이 더 큰 레벨의 상관관계를 갖고 제 1 라인에서 멀리 있는 라인이 더 작은 레벨의 상관관계를 갖는 상관관계 변경을 갖는다.
도 2에 도시된 이미지에서, 제 1 라인에 더 가까운 제 M 라인과 제 1 라인으로부터 더 멀리 있는 제 N 라인은 교환되고(1 < M < N ≤H), 제 M 라인 및 제 N 라인 각각과 제 1 라인 사이의 상관관계를 계산한 이후에, 결과의 이미지는 도 3의 (B)에 도시된 바와 같이 나타내진다. 즉, 제 M 라인과 제 N 라인이 교환된 이미지에서, 제 1 라인에 더 가까운 제 M 라인에 대한 제 1 라인의 상관관계(교환하기 이전에 제 N 라인에 대응하는)는 더 작아지고, 제 1 라인으로부터 더 멀리 있는 제 N 라인에 대한 제 1 라인의 상관관계(교환하기 이전에 제 M 라인에 대응하는)는 더 커진다.
그래서, 원래의 상관관계 변경은 도 3의 (B)에 도시된 상관관계로 파괴된다. 그러나, 일반적으로, 이미지에 대해서는 원래의 상관관계 변경을 사용함으로써 파괴된 상관관계 변경이 원래 상태로 회복될 수 있다. 즉, 도 3의 (B)에 도시된 상관관계 변경은 이미지가 소유하는 원래 상관관계 변경에 대해 자연스럽지 못하여(부정확하여), 제 M 라인과 제 N 라인이 교환되어야 한다. 그래서, 부자연스러운 변경은 도 3의 (A)에 도시된 정확한 변경으로 회복될 수 있으므로, 원래 이미지가 디코딩될 수 있다.
도 2 및 도 3의 (A), (B)에 도시된 예에 따라, 이미지는 라인을 교환하여 코딩된다. 이 경우, 매입 코더(3)는 어느 라인이 추가 정보에 따라 이동되어 교환되어야 하는가를 결정한다. 한편, 디코더(6)는 상관관계를 사용하여 교환된 라인을 원래 위치로 복귀시키고, 즉, 코딩된 이미지를 원래 이미지로 대치하고, 그에 의해 코딩된 이미지를 디코딩한다. 디코딩 동작 동안, 디코더(6)는 이미지에 매입된 추가 정보를 디코딩하기 위해 어느 라인이 이동되어 교환되었나를 검출한다.
도 4는 코딩된 이미지가 이미지의 상관관계를 사용하여 원래 이미지로 디코딩될 수 있도록 이미지에 추가 정보를 매입함으로써 매입을 실행하는 도 1에 도시된 매입 코더의 구성예를 설명한다.
이미지 데이터베이스(1)로부터 출력된 이미지는 이미지가 예를 들어, 프레임 단위로 임시 저장되는 프레임 메모리(31)로 공급된다.
중앙 처리 유닛(CPU)(32)은 프로그램 메모리(33)에 저장된 프로그램을 실행함으로써, 이후 설명될, 매입 처리를 실행한다. 즉, CPU(32)는 프레임 메모리(31)에 저장된 이미지에 추가 정보 데이터베이스(2)로부터 공급되는 추가 정보를 매입한다.
프로그램 메모리(33)는 예를 들면, 판독 전용 메모리(ROM)나 랜덤 액세스 메모리(RAM)로 형성되고, CPU(32)가 매입 코딩 처리를 실행할 수 있게 하는 컴퓨터 프로그램을 저장한다. 출력 인터페이스(I/F)(34)는 프레임 메모리(31)로부터 그에 매입된 추가 정보를 갖는 이미지를 판독하고, 이를 코딩된 데이터로 출력한다.
프레임 메모리(31)는 다수의 프레임이 저장될 수 있도록 다수의 뱅크(bank)로 형성된다. 뱅크를 스위칭함으로써, 프레임 메모리(31)는 CPU(32)에 의해 처리되는 이미지의 픽셀 및 이미지 데이터베이스(1)로부터 공급된 이미지를 동시에 저장한다. 동시에, 프레임 메모리(31)는 또한 매입 정보를 포함하는 이미지를 출력한다(코딩된 데이터). 이러한 배열로, 코딩된 데이터는 이미지 데이터베이스(1)로부터 공급된 이미지가 이동 화상이더라도 실시간으로 출력될 수 있다.
도 5는 본 발명의 제 1 실시예에 따라 도 4에 도시된 CPU(32)에 의해 프로그램 메모리(33)에 저장된 프로그램을 실행하여 실시될 수 있는 매입 코더(3)의 기능적인 구성예를 설명한다.
코딩된 이미지는 예를 들어, 프레임의 단위로 블록 분할 유닛(41)에 공급된다. 블록 분할 유닛(41)은 1-프레임 이미지를 각각이 미리 정해진 크기를 갖는 블록으로 분할하고, 분할된 블록을 비트 회전 유닛(42)에 공급한다.
블록 분할 유닛(41)으로부터의 이미지 블록 뿐만 아니라 이미지에 매입된 추가 정보도 비트 회전 유닛(42)에 공급된다. 비트 회전 유닛(42)은 각 이미지 블록을 형성하는 일부 픽셀을 선택하여 픽셀값(이후 때로는 "선택 픽셀"이라 칭하여지는)을 회전시키고, 그에 의해 선택 픽셀에 추가 정보를 매입한다. 선택 픽셀에 추가 정보가 매입된 블록은 코딩된 이미지 메모리(43)에 코딩된 블록으로 공급된다.
코딩된 이미지 메모리(43)는 비트 회전 유닛(42)에서 공급되는 코딩된 블록을 순차적으로 저장하고, 한 프레임에 대한 코딩된 블록이 저장될 때, 코딩된 이미지 메모리(43)는 코딩된 블록을 코딩된 데이터로 출력한다.
이제는 도 6의 흐름도를 참고로 도 5에 도시된 매입 코더(3)에 의해 실행되는 매입 코딩 처리의 설명이 주어진다.
상기에 논의된 바와 같이, 코딩된 이미지는 프레임 단위로 블록 분할 유닛(41)에 공급된다. 1 프레임의 이미지를 수신하면, 단계(S1)에서, 블록 분할 유닛(41)은 1-프레임 이미지를 각각이 미리 정해진 크기를 갖는 블록으로 분할한다. 특별히, 블록 분할 유닛(41)은 도 7의 (A)에 도시된 바와 같이, 이미지를 4 x 4 픽셀 이미지 블록으로 분할한다. 블록 분할 유닛(41)에 의해 분할되는 이미지 블록은 이어서 예를 들면, 래스터 주사(raster scanning) 순서로 비트 회전 유닛(42)에 공급된다.
블록 분할 유닛(41)으로부터 이미지 블록을 수신하면, 단계(S2)에서, 비트 회전 유닛(42)은 수신된 이미지 블록을 현재 블록으로 설정하고, 현재 블록을 형성하는 픽셀 일부를 선택한다. 특별히, 현재 블록을 형성하는 픽셀 중에서, 비트 회전 유닛(42)은 체크형 패턴에 따라 도 7의 (A)에 도시된 빗금친 부분 및 흑색 부분 ●으로 나타내지는 것과 같은 픽셀을 선택한다. 즉, 단계(S2)에서는 이미지 블록을 형성하는 픽셀의 절반이 선택된다.
단계(S3)에서는 공급된 추가 정보에 따라 선택 픽셀의 값들이 비트 회전 유닛(42)에 의해 회전되므로, 추가 정보가 선택 픽셀에 매입될 수 있다. 특별히, 비트 회전 유닛(42)은 추가 정보의 값에 대응하는 비트수 만큼 최하위 비트(LSB)에서 최상위 비트(MSB)의 방향으로 (이후 때로는 "좌측 회전"이라 칭하여지는) 도 7의 (A)에 도시된 빗금친 부분으로 나타내지는 선택 픽셀의 값을 회전시킨다.
상기에 사용되는 "회전"이란 말은 비트 쉬프팅(bit shifting)과 유사하다; 그러나, LSB에서 MSB의 방향으로 회전이 실행될 때, MSB는 버려지지 않고 LSB로 쉬프트된다. 반대로, MSB에서 LSB의 방향으로 회전이 실행될 때, LSB는 버려지지 않고 MSB로 쉬프트된다.
비트 회전 유닛(42)은 또한 추가 정보의 값에 대응하는 비트수 만큼 MSB에서 LSB의 방향으로 (이후 때로는 "우측 회전"이라 칭하여지는) 도 7의 (A)에 도시된 흑색 부분 ●으로 나타내지는 선택 픽셀의 값을 회전시킨다.
값이 좌측으로 회전되는 픽셀과 우측으로 회전되는 픽셀은 각각 "좌측 회전 픽셀" 및 "우측 회전 픽셀"이라 칭하여진다.
본 실시예에서, 좌측 회전 픽셀 및 우측 회전 픽셀은 다른 방법으로 각 이미지 블록에서 대각선 방향으로 배열된다. 즉, 선택 픽셀의 절반은 좌측으로 회전되고, 다른 절반은 우측으로 회전된다.
픽셀은 8 비트를 갖고, 좌측 회전 픽셀의 값은 00111101B(B는 2진수임을 나타낸다)이고 우측 회전 픽셀의 값은 10010111B인 것으로 가정한다. 또한, 추가 정보는 "2"인 것으로 가정한다. 좌측 회전 픽셀 00111101B 및 우측 회전 픽셀 10010111B는 각각 2 비트 만큼 좌측 및 우측으로 회전되어, 도 7의 (B)에 도시된 바와 같이, 각각 11110100B 및 11100101B가 된다. 유사하게, 이미지 블록에서 다른 좌측 회전 픽셀 및 다른 우측 회전 픽셀은 추가 정보에 따라 회전된다.
픽셀값이 8 비트로 나타내질 때, 이는 0 내지 7 비트 만큼 회전될 수 있고, 그 경우, 0 내지 7 비트 추가 정보(3 비트로 나타내지는)가 한 이미지 블록에 매입된다.
단계(S3)에서 선택 픽셀이 회전된 이미지 블록은 코딩된 이미지 메모리(43)에 코딩된 블록으로 공급되어 그에 저장된다. 이어서, 단계(S4)에서는 비트 회전 유닛(42)에 이미지 블록(이후 "처리되지 않은 블록"이라 칭하여지는)이 있는가 여부를 결정하고, 그러한 경우, 처리되지 않은 이미지 블록 중 하나가 현재 블록으로 설정된다. 이어서, 처리는 단계(S2)로 복귀되어 대응하는 처리가 반복된다.
단계(S4)에서 처리되지 않은 블록이 없는 것으로 밝혀지면, 즉 한 프레임에 대한 코딩된 블록이 모두 코딩된 이미지 메모리(43)에 저장된 것으로 밝혀지면, 코딩된 블록은 코딩된 이미지 메모리(43)로부터 판독된다. 이어서, 처리는 블록 분할 유닛(41)에서 처리될 프레임이 더 있는가 여부를 결정하는 단계(S5)로 진행된다. 단계(S5)의 결과가 yes이면, 처리는 단계(S1)로 복귀되어 대응하는 처리가 반복된다.
단계(S5)에서 블록 분할 유닛(41)에 의해 처리될 프레임이 더 이상 없는 것으로 결정되면, 매입 코딩 처리는 완료된다.
상기에 논의된 바와 같이, 이미지를 형성하는 픽셀 일부가 선택되고, 선택 픽셀의 값이 추가 정보에 따라 회전되고, 그에 의해 이미지에는 추가 정보가 매입된다. 그래서, 데이터량을 증가시키지 않고 이미지질의 손실을 최소로 하여 추가 정보를 매입하는 것이 가능하다.
추가 정보가 매입된 선택 픽셀(도 7의 (A)에서 빗금친 부분 및 흑색 부분 ●으로 나타내지는 픽셀)은 이후 논의될 바와 같이, 이미지의 상관관계, 즉 오버헤드(overhead) 없이 추가 정보를 포함하지 않는 픽셀(도 7의 (A)에서 O로 나타내지는 픽셀)과 선택 픽셀 사이의 상관관계를 사용하여 원래 픽셀 및 추가 정보로 디코딩(회복)될 수 있다. 따라서, 결과의 코딩된 이미지(재생 이미지)에서는 종래에 추가 정보를 매입하여 발생되는 이미지질의 변경이 관찰되지 않는다.
도 8은 도 5에 도시된 매입 코더(3)로부터 출력된 코딩된 데이터를 이미지의 상관관계를 사용하여 원래 이미지 및 추가 정보로 디코딩하기 위한 도 1에 도시된 디코더(6)의 구성예를 설명한다.
코딩된 데이터, 즉 추가 정보가 매입된 이미지(이후 때로는 "매입 이미지"이라 칭하여지는)는 프레임 메모리(51)에 공급된다. 프레임 메모리(51)는 예를 들어, 프레임 단위로 매입 이미지를 일시 저장한다. 프레임 메모리(51)는 도 4에 도시된 프레임 메모리(31)와 유사하게 구성되고, 프레임 메모리(51)에 제공된 뱅크를 스위칭함으로써, 매입 이미지는 이동 화상이더라도 실시간으로 처리될 수 있다.
출력 인터페이스(I/F)(52)는 추후 논의될 CPU(53)에 의한 디코딩 처리를 실행하여 구해진 프레임 메모리(51)로부터 이미지(디코딩된 이미지)를 판독하고, 그 이미지를 출력한다.
CPU(53)는 프로그램 메모리(54)에 저장된 프로그램을 실행시켜 디코딩 처리를 실행한다. 즉, CPU(53)는 프레임 메모리(51)에 저장된 매입 이미지를 이미지의 상관관계를 사용하여 원래 이미지 및 추가 정보로 디코딩한다.
프로그램 메모리(54)는 도 4에 도시된 프로그램 메모리(33)와 유사하게 구성되고, CPU(53)가 디코딩 처리를 실행할 수 있게 하는 컴퓨터 프로그램을 저장한다.
도 9는 본 발명의 제 1 실시예에 따라 도 8에 도시된 CPU(53)에 의해 프로그램 메모리(54)에 저장된 프로그램을 실행시킴으로써 실시될 수 있는 디코더(6)의 기능적인 구성예를 설명한다.
코딩된 데이터인 매입 이미지는 예를 들어, 프레임 단위로 블록 분할 유닛(61)에 공급된다. 도 5에 도시된 블록 분할 유닛(41)에서와 같이, 블록 분할 유닛(61)은 매입 이미지를 각각이 미리 정해진 크기를 갖는 블록, 즉 코딩된 블록으로 분할하고, 이들을 비트 역회전 유닛(62)에 순차적으로 공급한다.
블록 분할 유닛(61)으로부터 공급된 각 코딩된 블록을 형성하는 픽셀 중에서, 비트 역회전 유닛(62)은 도 5에 도시된 비트 회전 유닛(42)에 의해 선택된 것과 같은 위치에 놓인 픽셀을 선택한다. 이어서, 비트 역회전 유닛(62)은 회전 비트 레지스터(63)로부터 공급된 회전값에 대응하는 비트수 만큼 선택된 픽셀의 값을 회전시키고, 결과의 값을 차이값 계산 유닛(64)에 공급한다. 비트 역회전 유닛(62)은 또한 최적 회전 비트 저장 레지스터(69)에 저장된 최적 회전 비트의 수만큼 선택된 픽셀의 값을 회전시킨다. 결과적으로, 코딩된 블록은 원래 이미지 블록으로 디코딩되고, 이어서 디코딩된 이미지 메모리(71)로 공급된다.
회전 비트 레지스터(63)는 픽셀값이 회전되는 비트수로 회전값을 설정하고, 설정된 회전값을 비트 역회전 유닛(62) 및 스위치(65)에 공급한다. 특별히, 픽셀값이 th_r 비트로 나타내질 때, 이는 0 내지 th_r - 1 비트 만큼 회전될 수 있다(th_r 비트 보다 크거나 같은 수 만큼의 회전은 0 내지 th_r - 1 비트의 대응하는 수 만큼의 회전과 같은 결과를 얻는다). 이 경우, 회전 비트 레지스터(63)는 순차적으로 0 내지 th_r - 1 비트를 회전값으로 설정하고, 이들을 비트 역회전 유닛(62) 및 스위치(65)에 공급한다.
선택 픽셀의 값이 회전된 코딩된 블록을 비트 역회전 유닛(62)으로부터 수신하면, 차이값 계산 유닛(64)은 각 선택 픽셀과 인접 픽셀 사이의 상관관계 값, 예를 들면 차이값의 절대치의 합(이후 "절대 차이의 합"이라 칭하여지는)을 계산한다. 픽셀값의 절대 차이의 합은 스위치(66) 및 비교기(68)에 공급된다.
스위치(65)는 회전 비트 레지스터(63)로부터 회전값을 수신하고, 이를 비교기(68)의 제어하에서 최적 회전 비트 저장 레지스터(69)에 공급한다. 스위치(66)는 차이값 계산 유닛(64)으로부터 상관관계 값을 수신하고, 이를 비교기(68)의 제어하에서 최소 차이값 저장 레지스터(67)에 공급한다.
최소 차이값 저장 레지스터(67)는 스위치(66)를 통해 차이값 계산 유닛(64)으로부터 공급된 상관관계 값을 현재 처리되고 있는 코딩된 블록(이후 때로는 "현재 코딩된 블록"이라 칭하여지는)에 대한 최대 상관관계 값으로 저장한다. 본 실시예에서는 상기에 언급된 바와 같이, 각 선택 픽셀과 인접 픽셀 사이의 절대 차이의 합이 코딩된 블록에 대한 상관관계 값으로 사용된다. 따라서, 최대 상관관계 값은 픽셀값의 절대 차이의 최소합이 된다.
최소 차이값 저장 레지스터(67)에 최대 상관관계 값으로 저장된 절대 차이의 최소합은 비교기(68)에 공급된다. 이어서, 비교기(68)는 차이값 계산 유닛(64)으로부터 출력된 절대 차이의 합을 최소 차이값 저장 레지스터(67)에 저장된 절대 차이의 최소합과 비교하고, 비교 결과에 기초하여, 비교기(68)는 스위치(65, 66)를 제어한다.
최적 회전 비트 저장 레지스터(69)는 스위치(65)를 통해 회전 비트 레지스터(63)로부터 회전값을 수신하고, 이를 코딩된 블록 중 선택된 픽셀의 값이 회전되어야 하는 최적의 비트수인 최적 회전 비트로 저장한다. 최적 회전 비트 저장 레지스터(69)는 최적 회전 비트를 비트 역회전 유닛(62) 및 디코딩된 추가 정보 메모리(70)에 적절하게 공급한다.
디코딩된 추가 정보 메모리(70)는 최적 회전 비트 저장 레지스터(69)로부터 공급되는 최적 회전 비트에 대응하는 값을 코딩된 블록에 매입된 디코딩된 추가 정보로 일시 저장하고, 이를 출력한다. 디코딩된 이미지 메모리(71)는 코딩된 블록을 일시 저장하고, 선택 픽셀의 값이 최적 회전 비트 만큼 회전된 코딩된 블록을 비트 역회전 유닛(62)으로부터 디코딩된 이미지 블록으로 출력한다. 한 프레임의 디코딩된 이미지가 저장될 때, 디코딩된 이미지 메모리(71)는 이를 출력한다.
이후에는 도 10의 흐름도를 참고로 도 9에 도시된 디코더(6)에 의해 실행되는 매입 디코딩 처리가 설명된다.
상술된 바와 같이, 매입 이미지는 프레임 단위로 블록 분할 유닛(61)으로 공급된다. 한 프레임의 매입 이미지를 수신하면, 단계(S11)에서, 블록 분할 유닛(61)은 도 5에 도시된 블록 분할 유닛(51)의 경우에서와 같이, 매입 이미지를 각각이 미리 정해진 크기를 갖는 블록으로 분할한다. 즉, 블록 분할 유닛(61)은 도 11의 (A)에 도시된 바와 같이, 매입 이미지를 4 x 4 - 픽셀 코딩된 블록으로 분할한다. 블록 분할 유닛(61)에 의해 분할된 코딩된 블록은 예를 들면, 래스터 주사 순서로 비트 역회전 유닛(62)에 순차적으로 공급된다.
블록 분할 유닛(61)으로부터 코딩된 블록을 수신하면, 비트 역회전 유닛(62)은 그 코딩된 블록을 현재 코딩된 블록으로 설정하고, 현재 코딩된 블록을 형성하는 픽셀 일부를 선택한다. 특별히, 비트 역회전 유닛(62)은 도 5에 도시된 비트 회전 유닛(42)에 의해 선택된 것과 같이, 도 11에 도시된 빗금친 부분 및 흑색 부분 ●으로 나타내지는 똑같은 픽셀을 선택한다. 비트 역회전 유닛(62)은 또한 도 5에 도시된 비트 회전 유닛(42)에 의해 좌측 회전 픽셀 및 우측 회전 픽셀로 결정된 픽셀을 각각 우측 회전 픽셀 및 좌측 회전 픽셀로 설정한다.
즉, 코딩된 선택 픽셀 중에서, 비트 회전 유닛(42)에 의해 좌측 회전 픽셀로 결정된 픽셀은 이미지에 매입된 추가 정보에 대응하는 비트수 만큼 우측으로 회전된다. 유사하게, 비트 회전 유닛(42)에 의해 우측 회전 픽셀로 결정된 픽셀은 코딩된 픽셀에 매입된 추가 정보에 대응하는 비트수 만큼 좌측으로 회전된다. 그 결과로, 코딩된 픽셀은 원래 픽셀로 디코딩될 수 있다.
그러므로, 비트 역회전 유닛(62)은 좌측 회전 픽셀 및 우측 회전 픽셀로 결정되었던 픽셀을 각각 우측 회전 픽셀 및 좌측 회전 픽셀로 설정한다. 따라서, 도 7의 (A)를 참고로 논의된 회전 동작에 대조적으로, 비트 역회전 유닛(62)에서는 도 11의 (A)에 도시된 빗금친 부분으로 나타내지는 픽셀이 우측 회전 픽셀로 결정되고, 도 11의 (A)에 도시된 흑색 부분 ●으로 나타내지는 픽셀이 좌측 회전 픽셀로 결정된다.
이어서, 처리는 단계(S13)로 진행된다. 단계(S13)에서, 회전 비트 레지스터(63)는 회전값 n을 0으로 설정하고, 최소 차이값 저장 레지스터(67)는 미리 정해진 큰 값(예를 들면, 저장될 수 있는 최대값)이 되도록 값(절대 차이의 최소합)을 초기화한다. 이어서, 회전 비트 레지스터(63)는 회전값 n을 비트 역회전 유닛(62)에 공급하여, 일반적으로 off 상태인 스위치(65)에 이를 출력하고, 처리는 단계(S14)로 진행된다.
단계(S14)에서, 비트 역회전 유닛(62)은 회전 비트 레지스터(63)로부터 공급된 회전값 n 만큼 현재 코딩된 블록의 좌측 회전 픽셀값 및 우측 회전 픽셀값을 각각 좌측 및 우측으로 회전하고, 결과의 현재 코딩된 블록을 차이값 계산 유닛(64)에 공급한다.
이제는 픽셀값이 8 비트로 나타내지고, 우측 회전 픽셀값이 11110100B이고 좌측 회전 픽셀값이 11100101B라고 가정한다. 또한, 회전값 n은 "2"라고 가정한다. 우측 회전 픽셀 11110100B는 우측으로 2 비트 만큼 회전되고, 좌측 회전 픽셀 11100101B는 좌측으로 2 비트 만큼 회전되어, 도 11의 (B)에 도시된 바와 같이, 각각 00111101B 및 10010111B를 제공하게 된다. 유사하게, 현재 코딩된 블록에서 다른 좌측 회전 픽셀 및 다른 우측 회전 픽셀은 회전값 n에 따라 각각 좌측 및 우측으로 회전된다.
비트 역회전 유닛(62)으로부터 n 비트 만큼 회전된 픽셀값을 갖는 현재 코딩된 블록을 수신하면, 단계(S15)에서, 차이값 계산 유닛(64)은 각 선택 픽셀과 인접 픽셀의 합, 즉 이 경우에서는 선택 픽셀과 인접 픽셀 사이의 절대 차이의 합을 현재 코딩된 블록의 상관관계 값(현재 코딩된 블록을 형성하는 픽셀의 상관관계 값)으로 계산한다.
특별히, 코딩된 블록에서는 도 12에서 설명되는 바와 같이, 흑색 부분 ● 및 빗금친 부분으로 나타내지는 선택 픽셀이 매입 부호화 처리 동안 회전되지 않았던 적어도 한 픽셀(이후 때로는 "비선택 픽셀"이라 칭하여진다)에 인접하여 위치한다. 차이값 계산 유닛(64)에서는 각 선택 픽셀과 인접한 비선택 픽셀 사이의 절대 차이가 계산되고, 이러한 절대 차이의 합은 현재 코딩된 블록의 상관관계 값으로 결정된다.
도 12에 도시된 경우와 같이, 선택 픽셀이 다수의 비선택 픽셀에 인접하여 위치하면, 도 12에 도시된 실선 화살표로 나타내지는 바와 같이, 선택 픽셀과 각 비선택 픽셀 사이의 절대 차이가 계산된다.
상기에 논의된 예에서는 상관관계 값이 현재 코딩된 블록내의 픽셀만을 사용하여 구해진다. 그러나, 상관관계 값은 현재 코딩된 블록 이외의 블록의 픽셀을 사용해 결정될 수 있다.
예를 들어, 매입 이미지를 형성하는 코딩된 블록이 래스터 주사 순서의 현재 코딩된 블록으로 처리되면, 좌측으로, 상단으로, 또한 상단 좌측으로 현재 코딩된 블록에 인접한 코딩된 블록은 이미 원래 픽셀값으로 디코딩되어 있다. 좌측, 상단, 우측, 또는 하단으로 현재 코딩된 블록에 인접한 일부 픽셀은 매입 코딩 처리 동안 회전되지 않았다(비선택 픽셀).
현재 코딩된 블록 이외의 픽셀 중에서, 매입 코딩 처리 전후에 똑같이 유지되는 픽셀(도 12에 도시된 점선 원으로 나타내지는)은 도 12에 점선 원으로 나타내지는 바와 같이, 현재 코딩된 블록의 선택 픽셀과의 절대 차이를 계산하는데 사용될 수 있다.
부가하여, 상술된 예에서는 선택 픽셀과 인접한 비선택 픽셀 각각 사이의 절대 차이가 코딩된 블록의 상관관계 값을 결정하는데 사용된다. 그러나, 인접하지 않지만 선택 픽셀 주위에 있는 비선택 픽셀과 선택 픽셀 사이의 절대 차이가 사용될 수 있다.
다른 방법으로, 선택 픽셀에 공간상으로 인접한 픽셀 뿐만 아니라, 선택 픽셀에 시간상으로 인접한 픽셀도 사용될 수 있다.
이 방식으로, 차이값 계산 유닛(64)에서 현재 코딩된 블록의 상관관계 값으로 계산된 절대 차이의 합은 일반적으로 off 상태인 스위치(66) 및 비교기(68)에 공급된다.
현재 코딩된 블록의 절대 차이의 합을 수신하면, 비교기(68)는 단계(S16)에서 절대 차이의 합이 최소 차이값 저장 레지스터(67)에 저장된 값(절대 차이의 최소합) 보다 더 작은가 여부를 결정한다.
단계(S16)의 결과가 yes이면, 선택 픽셀이 n 비트 만큼 회전된 현재 코딩된 블록의 상관관계 값은 이전에 구해진 상관관계 값 보다 더 큰 것으로 밝혀진다. 그래서, 선택 픽셀이 n 비트 만큼 회전된 현재 코딩된 블록은 원래 이미지 블록으로 디코딩될 가능성이 가장 큰 것으로 결정된다. 이어서, 처리는 비교기(68)가 스위치(65, 66)를 off에서 on으로 일시 변경시키는 단계(S17)로 진행하여 단계(S18)로 진행한다.
스위치(65, 66)를 일시적으로 on 상태로 함으로써, 단계(S17)에서는 회전 비트 레지스터(63)로부터 출력된 회전값 n이 스위치(65)를 통해 최적 회전 비트 저장 레지스터(69)에 공급된다. 최적 회전 비트 저장 레지스터(69)에서, 최적 회전 비트 n_min으로 저장된 값은 회전 비트 레지스터(63)로부터의 회전값 n에 의해 새로운 최적 회전 비트 n_min(현재 코딩된 블록을 디코딩하기 위해 선택 픽셀이 회전될 최적 비트수)로 오버라이트(overwrite)된다.
단계(S17)에서, 절대 차이의 합은 차이값 계산 유닛(64)으로부터 스위치(66)를 통해 최소 차이값 저장 레지스터(67)에 공급된다. 최소 차이값 저장 레지스터(67)에서, 그에 저장된 값은 차이값 계산 유닛(64)으로부터 출력된 절대 차이의 합에 의해 새로운 절대 차이의 최소합으로(현재 코딩된 블록에 대한 최대 상관관계 값으로) 오버라이트된다.
단계(S16)에서 차이값 계산 유닛(64)으로부터 출력된 절대 차이의 합이 최소 차이값 저장 레지스터(67)에 저장된 값 보다 더 작지 않은 것으로 결정되면, 다른 말로, 선택 픽셀이 n 비트 만큼 회전된 현재 코딩된 블록에 대한 상관관계 값이 앞서 구해진 최대 상관관계 값 보다 더 크지 않은 것으로 결정되면, 현재 코딩된 블록은 원래 블록으로 디코딩되지 않은 것으로 결정될 수 있다. 이때, 처리는 단계(S17)를 스킵하여 단계(S18)로 진행한다. 단계(S18)에서는 회전 비트 레지스터(63)에서 회전값 n이 1 만큼 증가된다.
단계(S19)에서는 회전 비트 레지스터(63)내의 회전값 n이 픽셀값 th_r의 비트수 보다 더 작은가 여부를 결정한다. 단계(S19)의 결과가 yes이면, 즉 픽셀값이 회전될 수 있는 비트수내에 회전값 n이 있으면, 처리는 단계(S14)로 복귀하여 대응하는 처리가 반복된다.
반대로, 단계(S19)에서 회전값 n이 픽셀값 th_r의 비트수 보다 더 작지 않은 것으로 밝혀지면, 즉 픽셀값이 회전될 수 있는 가능한 모든 회전값 n을 사용해 현재 코딩된 블록에 대한 상관관계 값(절대 차이의 합)이 계산되었으면, 처리는 단계(S20)로 진행한다. 단계(S20)에서는 현재 코딩된 블록의 선택 픽셀값이 최적 회전 비트 n_min 만큼 회전되고, 그에 의해 현재 코딩된 블록을 원래 블록으로 디코딩하고 코딩된 블록에 매입된 추가 정보를 디코딩한다.
특별히, 최적 저장 비트 저장 레지스터(69)는 그에 저장된 최적 회전 비트 n_min를 비트 역회전 유닛(62)에 공급한다. 비트 역회전 유닛(62)은 단계(S14)에서 논의된 바와 같이, 현재 코딩된 블록의 좌측 회전 픽셀 및 우측 회전 픽셀을 각각 좌측 및 우측으로 회전하고, 그에 의해 현재 코딩된 블록을 원래 블록으로 디코딩한다. 디코딩된 블록은 이어서 디코딩된 이미지 메모리(71)에 공급되어 대응하는 어드레스에 저장된다.
최적 회전 비트 저장 레지스터(69)는 또한 그에 저장된 최적 회전 비트 n_min를 현재 코딩된 블록에 매입된 디코딩된 추가 정보로서 디코딩된 추가 정보 메모리(70)에 공급한다.
이어서, 단계(S21)에서는 현재 코딩된 블록으로 비트 역회전 유닛(62)에 처리될 블록(이후 때로는 "비처리 블록"이라 칭하여지는)이 더 있는가 여부를 결정한다. 단계(S21)의 결과가 yes이면, 비처리 블록 중 하나(예를 들어, 래스터 주사 순서에서 이어지는 코딩된 블록)가 현재 코딩된 블록인 것으로 결정된다. 이때, 처리는 단계(S12)로 복귀되어 대응하는 처리가 반복된다.
단계(S21)에서 비처리 블록이 더 이상 없는 것으로 밝혀지면, 다른 말로, 한 프레임에 대한 모든 디코딩된 블록이 디코딩된 이미지 메모리(71)에 저장되고 1-프레임 블록에 매입된 모든 항목의 디코딩된 추가 정보가 디코딩된 추가 정보 메모리(70)에 저장되면, 한 프레임에 대한 디코딩된 이미지는 디코딩된 이미지 메모리(71)로부터 판독되고, 또한 디코딩된 추가 정보는 디코딩된 추가 정보 메모리(70)로부터 판독된다.
이어서, 단계(S22)에서는 블록 분할 유닛(61)에 이어서 처리될 매입 이미지 프레임이 더 있는가 여부를 결정한다. 단계(S22)의 결과가 yes이면, 처리는 단계(S11)로 복귀하여, 대응하는 처리가 반복된다.
한편, 단계(S22)에서 블록 분할 유닛(61)에 이어서 처리될 매입 이미지 프레임이 더 이상 없는 것으로 밝혀지면, 디코딩 처리는 완료된다.
상기 설명에 따라, 추가 정보가 매입된 코딩된 이미지 데이터는 이미지의 상관관계를 사용하여 원래 이미지 및 추가 정보로 디코딩된다. 그래서, 디코딩 동작은 디코딩 동작을 실행하는데 요구되는 오버헤드를 발생시키지 않고 실행될 수 있다. 결과적으로, 디코딩된 이미지(재생 이미지)는 기본적으로 종래에 추가 정보를 매입함으로써 겪게 되는 이미지질의 저하와 무관해진다.
시뮬레이션(simulation) 테스트는 다음과 같이 실행되었다. 각 픽셀이 8 비트를 갖는 자연스러운 이미지는 4 x 4 - 픽셀 블록으로 분할되어, 매입 코딩 동작이 실행되었다(이 경우, 3개 비트의 추가 정보가 한 블록에 매입될 수 있으므로, 추가 정보의 매입 비율은 3 비트/16 픽셀이다). 이어서, 매입 이미지에는 디코딩 동작이 실행되었고, 모든 픽셀값은 정확하게 디코딩되었다(이는 추가 정보도 정확하게 디코딩되었음을 의미한다).
또 다른 시뮬레이션 테스트는 다음과 같이 실행되었다. 상술된 시뮬레이션 테스트에서 사용된 것과 유사한 자연스러운 이미지가 2 x 2 - 픽셀 블록으로 분할되어, 매입 코딩 동작이 실행되었다(이 경우, 추가 정보의 매입 비율은 3 비트/4 픽셀이고, 이는 상술된 시뮬레이션 테스트의 4배이다). 이어서, 매입 이미지에는 디코딩 동작이 실행되었고, 픽셀 값의 97.92%가 정확하게 디코딩되었다.
따라서, 한 블록이 더 많은 수의 픽셀로 형성되면, 픽셀은 더 높은 정확도로 디코딩될 수 있다. 한편, 한 프레임에 매입될 수 있는 추가 정보의 양, 즉 매입 비율은 증가된다. 대조적으로, 한 블록이 더 작은 수의 픽셀로 형성되면, 매입 비율은 증가되지만, 디코딩 정확도는 낮아진다. 그래서, 한 블록을 형성하는 픽셀의 수는 매입 비율 및 디코딩 정확도를 고려하여 바람직하게 결정된다.
상기 실시예에서, 픽셀값이 YUV 또는 RGB와 같이 다수의 구성성분으로 나타내지면, 모든 구성성분은 똑같은 추가 정보에 따라 회전될 수 있다. 다른 방법으로, 구성성분은 추가 정보의 다른 항목에 따라 개별적으로 회전될 수 있다.
상술된 실시예에서, 블록을 형성하는 일부 픽셀은 체크 패턴에 따라 선택되고, 추가 정보는 선택된 픽셀에 매입된다. 그러나, 추가 정보를 매입하는데 사용되는 일부 픽셀은 다른 패턴에 따라 선택될 수 있다. 부가하여, 본 실시예에서는 블록을 형성하는 픽셀의 절반이 선택되고, 선택 픽셀의 값이 추가 정보에 따라 회전되지만, 회전을 실행하는데 사용되는 픽셀의 수는 블록을 형성하는 픽셀의 절반인 것으로 제한되지 않는다. 그러나, 상술된 바와 같이, 추가 정보가 매입된 픽셀을 디코딩할 때, 상관관계 값은 추가 정보가 없는 픽셀을 사용하여 바람직하게 결정될 수 있다. 픽셀 사이의 상관관계는 픽셀이 공간상으로 또는 시간상으로 서로 더 멀리 있을 때 더 작아진다. 그러므로, 정확한 디코딩 동작을 실행하기 위해, 추가 정보가 매입될 픽셀은 공간상으로 또는 시간상으로 간격을 두고 위치하는 방식으로 선택될 수 있다.
상기 실시예에서, 좌측 회전 픽셀 및 우측 회전 픽셀은 선택 픽셀의 대각선 방향으로 번갈아 위치하도록 선택된다. 그러나, 좌측 회전 픽셀 및 우측 회전 픽셀은 다른 패턴에 따라 배열될 수 있다.
상술된 실시예에서, 일부 선택 픽셀은 좌측 회전 픽셀인 것으로 결정되어 추가 정보에 따라 좌측으로 회전되고, 나머지 선택 픽셀은 우측 회전 픽셀인 것으로 결정되어 추가 정보에 따라 우측으로 회전된다. 그러나, 모든 선택 픽셀은 좌측 또는 우측으로 회전될 수 있다.
도 13은 본 발명의 제 2 실시예에 따라 도 4에 도시된 CPU(32)에 의해 프로그램 메모리(33)에 저장된 프로그램을 실행함으로써 실시될 수 있는 매입 코더(3)의 구성예를 설명한다.
코딩될 이미지는 예를 들어, 프레임의 단위로 블록 분할 유닛(81)에 공급된다. 블록 분할 유닛(81)은 이미지를 각각이 미리 정해진 크기를 갖는 이미지 블록으로 분할하고, 분할된 블록을 배타적 논리합(exclusive-OR) 산술 유닛(82)에 공급한다.
블록 분할 유닛(81)으로부터의 이미지 블록 뿐만 아니라 이미지에 매입된 추가 정보도 배타적 논리합 산술 유닛(82)에 공급된다. 배타적 논리합 산술 유닛(82)은 블록 분할 유닛(81)으로부터 공급된 이미지 블록을 형성하는 픽셀 일부(이후 때로는 "선택 픽셀"이라 칭하여지는)를 선택하고, 각 선택 픽셀과 추가 정보 사이의 배타적 논리합을 계산하여, 그에 의해 추가 정보를 매입 픽셀로 매입한다. 선택 픽셀에 매입된 추가 정보를 갖는 이미지 블록은 코딩된 블록으로 코딩된 이미지 메모리(83)에 공급된다.
코딩된 이미지 메모리(83)는 배타적 논리합 산술 유닛(82)으로부터 공급된 코딩된 블록을 순차적으로 저장한다. 한 프레임의 코딩된 블록이 저장되면, 코딩된 블록은 코딩된 데이터로 출력된다.
이제는 도 14의 흐름도를 참고로 도 13에 도시된 매입 코더(3)에 의해 실행되는 매입 코딩 처리가 설명된다.
상술된 바와 같이, 코딩되는 이미지는 프레임의 단위로 블록 분할 유닛(81)에 공급된다. 한 프레임의 이미지를 수신하면, 단계(S31)에서, 블록 분할 유닛(81)은 각각이 미리 정해진 크기를 갖는 블록으로 이미지를 분할한다. 즉, 블록 분할 유닛(81)은 도 15의 (A)에 도시된 바와 같이, 이미지를 4 x 4 - 픽셀 이미지 블록으로 분할한다. 블록 분할 유닛(81)에 의해 구해진 이미지 블록은 예를 들어, 래스터 주사 순서로 배타적 논리합 산술 유닛(82)에 순차적으로 공급된다.
블록 분할 유닛(81)으로부터 이미지 블록을 수신하면, 단계(S32)에서, 배타적 논리합 산술 유닛(82)은 수신된 이미지 블록을 현재 블록으로 설정하고, 현재 블록을 형성하는 일부 픽셀을 선택한다. 특별히, 배타적 논리합 산술 유닛(82)은 체크형 패턴에 따라 도 15의 (A)에 도시된 빗금친 부분 및 흑색 부분 ●으로 나타내지는 픽셀을 선택한다. 즉, 현재 블록을 형성하는 픽셀의 절반이 선택된다.
단계(S33)에서, 배타적 논리합 산술 유닛(82)은 각 선택 픽셀과 추가 정보 사이의 배타적 논리합을 계산하고, 그에 의해 추가 정보를 선택 픽셀에 매입한다. 특별히, 배타적 논리합 산술 유닛(82)은 도 15의 (A)에서 빗금친 부분으로 나타내지는 각 선택 픽셀과 추가 정보의 비트 스트림 사이의 배타적 논리합을 계산하고, 계산된 결과를 선택 픽셀의 값으로 설정한다.
배타적 논리합 산술 유닛(82)은 또한 흑색 부분 ●으로 나타내지는 각 선택 픽셀과 추가 정보의 비트 스트림 순서를 반전시킴으로써 구해진 비트 스트림(이후 "반전 비트 스트림"이라 칭하여지는) 사이의 배타적 논리합을 계산하고, 계산된 결과를 선택 픽셀의 값으로 설정한다.
추가 정보의 비트 스트림 및 추가 정보의 반전 비트 스트림과의 배타적 논리합을 계산하는데 사용되는 픽셀은 이후 각각 "정상 비트 스트림 픽셀" 및 "반전 비트 스트림 픽셀"이라 칭하여진다. 제 2 실시예에서, 정상 비트 스트림 픽셀 및 반전 비트 스트림 픽셀은 도 15의 (A)에서 설명되는 바와 같이, 선택 픽셀의 대각선 방향으로 번갈아 배열된다. 따라서, 선택 픽셀의 절반은 정상 비트 스트림 픽셀이라 설정되고, 다른 절반은 반전 비트 스트림 픽셀이라 설정된다.
이제 픽셀값은 8 비트로 나타내지고, 정상 비트 스트림 픽셀의 값은 00111101B(B는 2진수임을 나타낸다)이고 반전 비트 스트림 픽셀의 값은 10010111B인 것으로 가정한다. 또한, 추가 정보는 00101001B(= 41)인 것으로 가정한다. 배타적 논리합은 도 15의 (B)에 도시된 바와 같이, 정상 비트 스트림 픽셀 00111101B의 값과 추가 정보를 나타내는 비트 스트림 00101001B 사이에서 계산되어, 00010100B가 주어진다. 배타적 논리합은 또한 도 15의 (C)에 도시된 바와 같이, 반전 비트 스트림 픽셀 10010111B의 값과 추가 정보의 반전 비트 스트림 10010100B 사이에서 계산되어, 00000011B가 주어진다. 유사하게, 배타적 논리합은 다른 정상 비트 스트림 픽셀과 반전 비트 스트림 픽셀에 대해 계산된다.
픽셀값이 8 비트로 나타내질 때, 배타적 논리합 계산은 픽셀값과 같은 비트수를 갖는 추가 정보 사이에서 실행될 수 있다. 따라서, 이 경우에는 8 비트 추가 정보(0 내지 255의 범위에 있는)가 한 블록에 매입될 수 있다.
단계(S33)에서는 상술된 바와 같이 선택 픽셀과 추가 정보 사이에서 배타적 논리합을 계산한 이후, 결과의 블록이 코딩된 이미지 메모리(83)에 코딩된 블록으로 공급되어 그에 저장된다. 이어서, 처리는 단계(S34)로 진행된다.
단계(S34)에서는 현재 블록으로 배타적 논리합 산술 유닛(82)에 처리될 블록(이후 때로는 "비처리 블록"이라 칭하여지는)이 더 있는가 여부를 결정한다. 단계(S34)의 결과가 yes이면, 비처리 블록 중 하나가 현재 블록으로 설정되고, 처리는 단계(S32)로 복귀되어 대응하는 처리가 반복된다.
단계(S34)에서 배타적 논리합 산술 유닛(82)에 의해 비처리 블록이 더 이상 없는 것으로 결정되면, 다른 말로, 한 프레임에 대한 모든 코딩된 블록이 코딩된 이미지 메모리(83)에 저장되면, 코딩된 블록은 코딩된 이미지 메모리(83)로부터 판독된다.
단계(S35)에서는 블록 분할 유닛(81)에 처리될 프레임이 더 있는가 여부를 결정한다. 단계(S35)의 결과가 yes이면, 처리는 단계(S31)로 복귀되어 대응하는 프레임이 상기와 유사한 방식으로 처리된다.
단계(S35)에서 블록 분할 유닛(81)에 처리될 프레임이 더 이상 없는 것으로 밝혀지면, 매입 코딩 처리는 완료된다.
이 방식으로, 추가 정보는 이미지 블록을 형성하는 일부 픽셀을 선택하고 각 선택 픽셀과 추가 정보 사이에서 배타적 논리합을 계산함으로써 이미지 블록에 매입된다. 그래서, 데이터량을 증가시키지 않고 이미지질의 손실을 최소로 하여 이미지에 추가 정보를 매입하는 것이 가능하다.
즉, 도 15의 (A)에 도시된 추가 정보가 매입된 선택 픽셀 중에서, 빗금친 부분 및 흑색 부분 ●으로 나타내지는 픽셀값은 오버헤드를 일으키지 않고 이미지의 상관관계, 즉 도 15의 (A)에서 O로 나타내지는 추가 정보가 없는 픽셀과 선택 픽셀 사이의 상관관계를 사용함으로써 원래 픽셀 및 추가 정보로 디코딩(회복)될 수 있다. 이는 추후 상세히 논의된다. 따라서, 디코딩된 이미지(재생 이미지)에서는 추가 정보를 매입함으로써 발생되는 이미지질의 저하가 관찰되지 않는다.
도 16은 본 발명의 제 2 실시예에 따라 도 8에 도시된 CPU(53)에 의해 프로그램 메모리(54)에 저장된 프로그램을 실행함으로써 실시될 수 있는 디코더(6)의 구성예를 설명한다.
매입 이미지는 예를 들어, 프레임의 단위로 블록 분할 유닛(161)에 공급된다. 블록 분할 유닛(161)은 도 13에 도시된 블록 분할 유닛(81)의 경우에서와 같이, 매입 이미지를 각각이 미리 정해진 크기를 갖는 블록으로, 즉 코딩된 블록으로 분할하고, 분할된 블록을 배타적 논리합 산술 유닛(162)에 순차적으로 공급한다.
블록 분할 유닛(161)으로부터 공급된 코딩된 이미지를 형성하는 픽셀 중에서, 배타적 논리합 산술 유닛(162)은 도 13에 도시된 배타적 논리합 산술 유닛(82)에 의해 선택된 것과 같은 위치에 있는 픽셀을 선택한다. 이어서, 배타적 논리합 산술 유닛(162)은 각 선택 픽셀값과 EX-OR 데이터 레지스터(163)로부터 공급된 EX-OR 데이터 사이에서 배타적 논리합을 계산하고, 이를 차이값 계산 유닛(164)에 공급한다. 배타적 논리합 산술 유닛(162)은 또한 각 선택 픽셀값과 최적 EX-OR 데이터 저장 레지스터(169)에 저장된 최적 EX-OR 데이터 사이에서 배타적 논리합을 계산한다. 그 결과로, 코딩된 블록은 원래 이미지 블록으로 디코딩되어 디코딩된 이미지 메모리(171)에 공급될 수 있다.
EX-OR 데이터 레지스터(163)는 픽셀값과 배타적 논리합을 계산하는데 사용되는 데이터인 EX-OR 데이터를 설정하고, 이를 배타적 논리합 산술 유닛(162) 및 스위치(165)에 공급한다. 픽셀값이 th_r 비트로 나타내지면, 배타적 논리합은 픽셀값과 th_r 비트를 갖는 데이터 사이에서 계산될 수 있다. 이 경우, EX-OR 데이터 레지스터(163)는 th_r 비트로 나타내질 수 있는 데이터, 즉 0 내지 2th_r-1의 범위에 있는 값을 EX-OR 데이터로 설정하고, 이를 배타적 논리합 산술 유닛(162) 및 스위치(165)에 공급한다.
차이값 계산 유닛(164)은 배타적 논리합 산술 유닛(162)으로부터 각 선택 픽셀과 EX-OR 데이터 사이에서 배타적 논리합이 계산된 코딩된 블록을 수신하고, 선택 픽셀과 인접한 픽셀 사이의 상관관계 값, 즉 이 경우에서는 각 픽셀값의 절대 차이의 합을 계산한다. 상관관계 값인 절대 차이의 합은 비교기(168)에 공급된다.
스위치(165)는 비교기(168)의 제어하에서 EX-OR 데이터를 EX-OR 데이터 레지스터(163)로부터 최적의 EX-OR 데이터 저장 레지스터(169)에 공급한다. 스위치(166)는 비교기(168)의 제어하에서 상관관계 값을 차이값 계산 유닛(164)으로부터 최소 차이값 저장 레지스터(167)에 공급한다.
최소 차이값 저장 레지스터(167)는 스위치(166)를 통해 차이값 계산 유닛(164)으로부터 공급된 상관관계 값을 현재 처리되는 코딩된 블록(이후 때로는 "현재 코딩된 블록"이라 칭하여지는)에 대한 최대 상관관계 값으로 저장한다. 상기에 논의된 바와 같이, 제 2 실시예에서, 선택 픽셀과 인접 픽셀 사이의 절대 차이의 합은 그들 사이의 상관관계 값으로 사용된다. 따라서, 최대 상관관계 값은 픽셀값의 절대 차이의 최소합을 의미한다.
최소 차이값 저장 레지스터(167)에 최대 상관관계로 저장된 절대 차이의 최소합은 비교기(168)에 공급된다. 비교기(168)는 차이값 계산 유닛(164)으로부터 출력된 절대 차이의 합을 최소 차이값 저장 레지스터(167)에 저장된 절대 차이의 최소합과 비교하고, 비교 결과에 기초하여, 비교기(168)는 스위치(165, 166)를 제어한다.
최적의 EX-OR 데이터 저장 레지스터(169)는 스위치(165)를 통해 EX-OR 데이터 레지스터(163)로부터 EX-OR 데이터를 수신하여 최적 EX-OR 데이터로 저장하고, 이는 코딩된 블록의 선택 픽셀값과 배타적 논리합을 계산하는데 사용되는 최적 비트 스트림이다. 최적 EX-OR 데이터 저장 레지스터(169)는 최적 EX-OR 데이터를 배타적 논리합 산술 유닛(162) 및 디코딩된 추가 정보 메모리(170)에 적절하게 공급한다.
디코딩된 추가 정보 메모리(170)는 최적 EX-OR 데이터 저장 레지스터(169)로부터 공급된 최적 EX-OR 데이터를 코딩된 블록에 매입된 디코딩된 추가 정보로 일시 저장하고, 이를 출력한다. 디코딩된 이미지 메모리(171)는 선택 픽셀값과 최적 EX-OR 데이터 사이에서 배타적 논리합이 계산된 코딩된 블록을 디코딩된 원래 이미지 블록으로 일시 저장하고, 디코딩된 이미지는 한 프레임의 디코딩된 이미지 블록이 저장될 때 출력된다.
도 16에 도시된 디코더(6)에 의해 실행되는 디코딩 처리는 도 17의 흐름도를 참고로 이후 논의된다.
상술된 바와 같이, 매입 이미지는 프레임의 단위로 블록 분할 유닛(161)에 공급된다. 한 프레임의 매입 이미지를 수신하면, 단계(S41)에서, 블록 분할 유닛(161)은 도 13에 도시된 블록 분할 유닛(81)의 경우에서와 같이, 매입 이미지를 각각이 미리 정해진 크기를 갖는 블록으로 분할한다. 특별히, 블록 분할 유닛(161)은 도 18의 (A)에 도시된 바와 같이, 4 x 4 - 픽셀 코딩된 블록으로 나눈다. 블록 분할 유닛(161)에 의해 분할된 코딩된 블록은 예를 들어, 래스터 주사 순서로 배타적 논리합 산술 유닛(162)에 순차적으로 공급된다.
블록 분할 유닛(161)으로부터 코딩된 블록을 수신하면, 단계(S42)에서, 배타적 논리합 산술 유닛(162)은 수신된 코딩된 블록을 현재 코딩된 블록으로 설정하고, 현재 코딩된 블록을 형성하는 일부 픽셀을 선택한다. 특별히, 배타적 논리합 산술 유닛(162)은 도 13에 도시된 배타적 논리합 산술 유닛(82)에 의해 선택된 것과 같이, 도 18의 (A)에 도시된 빗금친 부분 및 흑색 부분 ●으로 나타내지는 똑같은 픽셀을 선택한다. 배타적 논리합 산술 유닛(162)은 또한 배타적 논리합 산술 유닛(82)의 경우에서와 같이, 상술된 선택 픽셀로부터 정상 비트 스트림 픽셀 및 반전 비트 스트림 픽셀을 선택한다.
즉, 코딩된 블록의 선택 픽셀 중에서, 도 13에 도시된 배타적 논리합 산술 유닛(82)에 의해 정상 비트 스트림 픽셀인 것으로 결정된 픽셀은 코딩된 픽셀에 매입된 추가 정보에 대응하는 비트 스트림과 각 픽셀값 사이에서 배타적 논리합을 계산함으로써 원래 픽셀로 디코딩될 수 있다. 유사하게, 배타적 논리합 산술 유닛(82)에 의해 반전 비트 스트림 픽셀인 것으로 결정된 픽셀은 코딩된 픽셀에 매입된 추가 정보의 반전 비트 스트림과 각 픽셀값 사이에서 배타적 논리합을 계산함으로써 원래 픽셀로 디코딩될 수 있다.
따라서, 배타적 논리합 산술 유닛(162)은 배타적 논리합 산술 유닛(82)의 경우에서와 같이, 선택 픽셀로부터 정상 비트 스트림 픽셀 및 반전 비트 스트림 픽셀을 선택한다. 그래서, 배타적 논리합 산술 유닛(162)에서는 도 15의 (A)를 참고로 논의된 예에서와 유사한 방식으로, 도 18의 (A)에 빗금친 부분으로 나타내지는 픽셀이 정상 비트 스트림 픽셀로 설정되고, 흑색 부분 ●으로 나타내지는 픽셀이 반전 비트 스트림 픽셀로 설정된다.
이어서, 처리는 단계(S43)로 진행된다. 단계(S43)에서, EX-OR 데이터 레지스터(163)는 EX-OR 데이터 n을 0으로 초기화하고, 최소 차이값 저장 레지스터(167)는 그 값(절대 차이의 최소합)을 미리 정해진 큰 값(예를 들면, 저장될 수 있는 최대값)으로 초기화한다. EX-OR 데이터 레지스터(163)는 이어서 일반적으로 off 상태인 스위치(165) 및 배타적 논리합 산술 유닛(162)에 EX-OR 데이터 n을 공급하고, 처리는 단계(S44)로 진행된다.
단계(S44)에서, 배타적 논리합 산술 유닛(162)은 현재 코딩된 블록의 정상 비트 스트림 픽셀 및 반전 비트 스트림 픽셀 각각과 EX-OR 데이터 레지스터(163)로부터 출력된 EX-OR 데이터 n 사이에서 배타적 논리합을 계산하고, 계산된 결과를 차이값 계산 유닛(164)에 공급한다.
이제 픽셀 값은 8 비트로 나타내지고, 정상 비트 스트림 픽셀의 값은 00010100B이고 반전 비트 스트림 픽셀의 값은 00000011B인 것으로 가정된다. 또한, EX-OR 데이터 n은 00101001B(= 41)인 것으로 가정된다. 이어서, 도 18의 (B)에 도시된 바와 같이, 정상 비트 스트림 픽셀값 00010100B와 EX-OR 데이터 n을 나타내는 비트 스트림 00101001B 사이에서 배타적 논리합이 계산되어, 00111101B가 주어진다. 또한, 도 18의 (C)에 도시된 바와 같이, 반전 비트 스트림 픽셀값 00000011B와 EX-OR 데이터 n의 반전 비트 스트림인 비트 스트림 10010100B 사이에서 배타적 논리합이 계산되어, 10010111B가 주어진다.
선택 픽셀과 EX-OR 데이터 n 사이에서 배타적 논리합이 계산된 현재 코딩된 블록을 배타적 논리합 산술 유닛(162)으로부터 수신하면, 단계(S45)에서, 차이값 계산 유닛(164)은 선택 픽셀과 인접 픽셀 사이의 상관관계 값의 합, 즉 이 경우에서는 선택 픽셀과 인접 픽셀 사이의 절대 차이의 합을 현재 코딩된 블록에 대한 상관관계 값(현재 코딩된 블록을 형성하는 픽셀 사이의 상관관계 값)으로 계산한다.
특별히, 코딩된 블록에서, 도 19에 설명된 바와 같이, 빗금 부분 및 흑색 부분 ●으로 나타내지는 선택 픽셀은 추가 정보와 배타적 논리합이 계산되지 않은 적어도 한 픽셀(이후 때로는 "비선택 픽셀"이라 칭하여지는)에 인접하게 위치한다. 차이값 계산 유닛(164)은 선택 픽셀과 인접한 비선택 픽셀 사이에서 절대 차이를 계산하고, 절대 차이의 합을 코딩된 블록의 상관관계 값으로 결정한다.
선택 픽셀이 다수의 비선택 픽셀에 인접하면, 선택 픽셀과 각 비선택 픽셀 사이의 절대 차이는 도 19의 실선 화살표로 나타내지는 바와 같이 계산된다.
상기에 논의된 예에서, 상관관계 값은 현재 코딩된 블록내의 픽셀만을 사용해 구해진다. 그러나, 상관관계 값은 현재 코딩된 블록 이외의 블록의 픽셀을 사용해 결정될 수 있다.
예를 들어, 매입 이미지를 형성하는 코딩된 블록이 래스터 주사 순서의 현재 코딩된 블록으로 처리되면, 좌측, 상단, 및 상단 좌측으로 현재 코딩된 블록에 인접한 코딩된 블록은 이미 원래 픽셀값으로 디코딩되어 있다. 매입 코딩 처리 동안 좌측, 상단, 우측, 또는 하단으로 현재 코딩된 블록에 인접한 일부 픽셀과 추가 정보 사이에서는 배타적 논리합이 계산되지 않는다.
현재 코딩된 블록 이외의 픽셀 중에서, 매입 코딩 처리 전후에 똑같이 유지되는 픽셀(도 19에 도시된 점선 원형으로 나타내지는)은 도 19에서 점선 화살표로 나타내지는 바와 같이, 현재 코딩된 블록의 선택 픽셀과의 절대 차이를 계산하는데 사용될 수 있다.
부가적으로, 상술된 예에서, 선택 픽셀과 인접한 각 비선택 픽셀 사이의 절대 차이는 코딩된 블록의 상관관계 값을 결정하는데 사용된다. 그러나, 인접하지 않지만 선택 픽셀 주위에 있는 비선택 픽셀과 선택 픽셀 사이의 절대 차이가 사용될 수 있다.
다른 방법으로, 선택 픽셀에 공간상으로 인접한 픽셀 뿐만 아니라, 선택 픽셀에 시간상으로 인접한 픽셀도 사용될 수 있다.
상기에 논의된 바와 같이, 차이값 계산 유닛(164)에 의해 계산된 현재 코딩된 블록에 대한 코딩 값인 픽셀값의 절대 차이의 합은 일반적으로 off 상태인 스위치(166) 및 비교기(168)에 공급된다.
차이값 계산 유닛(164)으로부터 현재 코딩된 블록의 절대 차이의 합을 수신하면, 비교기(168)는 단계(S46)에서 절대 차이의 합이 최소 차이값 저장 레지스터(167)에 저장된 값 보다 더 작은가 여부를 결정한다.
단게(S46)의 결과가 yes이면, 즉 선택 픽셀과 EX-OR 데이터 n 사이에서 배타적 논리합을 실행함으로써 구해진 현재 코딩된 블록의 상관관계 값이 현재 코딩된 블록에 대해 앞서 구해진 상관관계 값 보다 더 크면, 현재 코딩된 블록은 원래 블록으로 디코딩될 가능성이 가장 큰 것으로 결정될 수 있다. 이어서, 처리는 비교기(168)가 스위치(165, 166)를 off에서 on 상태로 일시 변경시키는 단계(S47)로 진행되어, 단계(S48)로 진행된다.
단계(S47)에서, EX-OR 데이터 레지스터(163)로부터 출력된 EX-OR 데이터 n는 스위치(165)를 통해 최적의 EX-OR 데이터 저장 레지스터(169)에 공급된다. 최적 EX-OR 데이터 n_min로 최적 EX-OR 데이터 저장 레지스터(169)에 저장된 값은 EX-OR 데이터 레지스터(163)로부터의 EX-OR 데이터 n에 의해 새로운 최적 EX-OR 데이터 n_min(현재 코딩된 블록을 디코딩할 때 선택 픽셀과의 배타적 논리합을 계산하는데 사용되는 최적 비트 스트림)로 오버라이트된다.
단계(S47)에서, 절대 차이의 합은 스위치(166)를 통해 차이값 계산 유닛(164)으로부터 최소 차이값 저장 레지스터(167)에 공급된다. 최소 차이값 저장 레지스터(167)에 저장된 값은 차이값 계산 유닛(164)으로부터 출력된 절대 차이의 합에 의해 새로운 절대 차이의 최소합(현재 코딩된 블록에 대한 최대 상관관계)으로 오버라이트된다.
대조적으로, 단계(S46)에서 비교기(168)에 의해 차이값 계산 유닛(164)으로부터의 절대 차이의 합이 최소 차이값 저장 레지스터(167)에 저장된 값 보다 더 작지 않은 것으로 결정되면, 즉 선택 픽셀과 EX-OR 데이터 n 사이에서 배타적 논리합을 실행함으로써 구해진 현재 코딩된 블록에 대한 상관관계 값이 현재 코딩된 블록에 대해 앞서 구해진 상관관계 값 보다 더 크지 않으면, 현재 코딩된 블록은 원래 블록으로 디코딩되었을 확률이 크기 않다. 그래서, 처리는 단계(S47)를 스킵하여 단계(S48)로 진행된다. 단계(S48)에서, EX-OR 데이터 n는 EX-OR 데이터 레지스터(163)에서 1 만큼 증가된다.
이어서, 단계(S49)에서는 EX-OR 데이터 n이 픽셀값에 지정된 비트수로 나타내질 수 있는 최대값 2th_r-1 보다 더 작거나 같은가 여부를 결정한다. 그런 경우, 처 리는 단계(S44)로 복귀되어 대응하는 처리가 반복된다.
단계(S44)의 결과가 no이면, 즉, EX-OR 데이터 n이 1 내지 2th_r-1의 범위에 있는 모든 범위로 현재 코딩된 블록에 대해 상관관계 값(절대 차이의 합)을 계산하는데 사용되었으면, 처리는 단계(S50)로 진행된다. 단계(S50)에서는 선택 픽셀과 최적 EX-OR 데이터 n_min 사이의 배타적 논리합이 계산되고, 그에 의해 현재 코딩된 블록을 원래 블록으로 디코딩하고, 또한 코딩된 블록에 매입된 추가 정보를 디코딩한다.
특별히, 최적 EX-OR 데이터 저장 레지스터(169)는 최적 EX-OR 데이터 n_min를 배타적 논리합 산술 유닛(162)에 공급한다. 배타적 논리합 산술 유닛(162)에서는 단계(S44)와 유사한 방식으로 최적 EX-OR 데이터 n_min와 현재 코딩된 블록의 각 정상 비트 스트림 픽셀 및 반전 비트 스트림 픽셀 사이의 배타적 논리합이 계산되고, 그에 의해 원래 이미지 블록을 디코딩한다. 디코딩된 이미지 블록은 디코딩된 이미지 메모리(171)에 공급되어 대응하는 어드레스에 저장된다.
최적 EX-OR 데이터 저장 레지스터(169)는 그에 저장된 최적 EX-OR 데이터 n_min를 현재 코딩된 블록에 매입된 디코딩된 추가 정보로 디코딩된 추가 정보 메모리(170)에 공급한다.
이후에, 처리는 배타적 논리합 산술 유닛(62)에 처리되어야 할 블록(이후 때로는 "비처리 블록"이라 칭하여지는)이 더 있는가 여부를 결정하는 단계(S51)로 진행된다. 단계(S51)의 결과가 yes이면, 비처리 블록 중 하나가 현재 코딩된 블록으로 설정된다(예를 들면, 래스터 주사 순서로 이어지는 현재 코딩된 블록). 이어서, 처리는 단계(S42)로 복귀되어 대응하는 처리가 반복된다.
반대로, 단계(S51)에서 배타적 논리합 산술 유닛(162)에 의해 비처리 블록이 더 이상 없는 것으로 결정되고, 즉 한 프레임의 모든 디코딩된 블록이 디코딩된 이미지 메모리(171)에 저장되고, 프레임에 매입된 디코딩된 추가 정보가 디코딩된 추가 정보 메모리(170)에 저장되면, 디코딩된 이미지는 디코딩된 이미지 메모리(171)로부터 판독되고, 디코딩된 추가 정보는 디코딩된 추가 정보 메모리(170)로부터 판독된다.
이후에, 단계(S52)에서는 블록 분할 유닛(161)에 처리될 매입 이미지 프레임이 더 있는가 여부를 결정한다. 그런 경우, 처리는 단계(S41)로 복귀되어 대응하는 처리가 반복된다.
단계(S52)에서 블록 분할 유닛(161)에 의해 처리될 매입 이미지 프레임이 더 이상 없는 것으로 밝혀지면, 디코딩 처리는 완료된다.
상기의 설명에 따라, 제 1 실시예 및 제 2 실시예에서는 추가 정보가 매입된 코딩된 이미지 데이터가 이미지의 상관관계를 사용해 원래 이미지 및 추가 정보로 디코딩된다. 그래서, 디코딩 동작을 실행하는데 요구되는 오버헤드가 발생되지 않는다. 그러므로, 디코딩된 이미지(재생 이미지)는 종래에 추가 정보를 매입하는 것으로 인해 겪게 되는 이미지질의 저하에 무관해진다.
시뮬레이션 테스트는 다음과 같이 실행되었다. 각 픽셀이 8 비트를 갖는 자연스러운 이미지는 4 x 4 - 픽셀 블록으로 분할되어, 매입 코딩 동작이 실행되었다(이 경우, 8개 비트의 추가 정보가 한 블록에 매입될 수 있으므로, 추가 정보의 매입 비율은 8 비트/16 픽셀이다). 이어서, 매입 이미지에는 디코딩 동작이 실행되었고, 픽셀값의 98.74%가 정확하게 디코딩되었다.
또 다른 시뮬레이션 테스트는 다음과 같이 실행되었다. 상술된 시뮬레이션 테스트에서 사용된 것과 유사한 자연스러운 이미지가 2 x 2 - 픽셀 블록으로 분할되어, 매입 코딩 동작이 실행되었다(이 경우, 추가 정보의 매입 비율은 8 비트/4 픽셀이고, 이는 상술된 시뮬레이션 테스트의 4배이다). 이어서, 매입 이미지에는 디코딩 동작이 실행되었고, 픽셀 값의 79.12%가 정확하게 디코딩되었다.
따라서, 한 블록이 더 많은 수의 픽셀로 형성되면, 픽셀은 더 높은 정확도로 디코딩될 수 있다. 한편, 한 프레임에 매입될 수 있는 추가 정보의 양, 즉 매입 비율은 감소된다. 대조적으로, 한 블록이 더 작은 수의 픽셀로 형성되면, 매입 비율은 증가되지만, 디코딩 정확도는 낮아진다. 그래서, 한 블록을 형성하는 픽셀의 수는 매입 비율 및 디코딩 정확도를 고려하여 바람직하게 결정된다.
상기 실시예에서, 매입 코딩 처리에는 도 15에 설명된 바와 같이, 반전 비트 스트림 추가 정보가 반전 비트 스트림 픽셀값과의 배타적 논리합을 계산하는데 사용된다. 그러나, 배타적 논리합은 반전 비트 스트림 픽셀의 순서를 반전시켜 구해진 값과 추가 정보 사이에서 계산될 수 있다.
예를 들어, 이제는 도 20에 설명된 바와 같이 픽셀값이 8 비트로 나타내지고, 정상 비트 스트림 픽셀값은 00111101B이고 반전 비트 스트림 픽셀값은 10010111B인 것으로 가정된다. 또한, 추가 정보는 00101001B(= 41)인 것으로 가정된다. 배타적 논리합은 정상 비트 스트림 픽셀 00111101B와 추가 정보를 나타내는 비트 스트림 00101001B 사이에서 계산되고, 도 15의 (B)와 똑같이, 도 20의 (B)에 도시된 바와 같은 00010100B가 주어진다. 한편, 배타적 논리합은 상술된 반전 비트 스트림 픽셀 11101001B를 반전시켜 구해진 비트 스트림 10010111B와 추가 정보를 나타내는 비트 스트림 00101001B 사이에서 계산되고, 도 20의 (C)에 도시된 바와 같이, 10111110B가 주어진다.
그러나, 이 경우, 디코딩 동작에서, 배타적 논리합은 반전 비트 스트림 픽셀과 EX-OR 데이터 n 사이에서 먼저 계산되고, 이어서 구해진 비트 스트림이 반전된다. 결과의 값을 픽셀값으로 사용하여 상관관계 값이 계산된다.
도 6, 도 10, 도 14, 및 도 17에 도시된 상기 처리는 하드웨어나 소프트웨어에 의해 실시될 수 있다. 소프트웨어를 사용해 실시되는 경우, 대응하는 소프트웨어 프로그램은 픽셀 처리 장치나 학습 장치에 설치된 전용 하드웨어 컴퓨터에 설치되거나, 대응하는 프로그램을 설치하여 다양한 처리를 실행하는 범용 컴퓨터에 설치될 수 있다.
이제는 도 21a, 도 21b, 및 도 21c를 참고로 상술된 처리를 실시하는 프로그램을 컴퓨터에 설치하여 컴퓨터에 의해 실행가능한 프로그램을 만드는데 사용되는 매체가 설명된다.
프로그램은 도 21a에 설명된 바와 같이, 컴퓨터(101)에 설치된 저장 매체로 동작하는 하드 디스크(102)나 반도체 메모리(103)에 설치함으로써 사용자에게 주어진다.
다른 방법으로, 소프트웨어는 도 21b에 도시된 바와 같이, 플로피 디스크(111), 컴팩트 디스크-판독 전용 메모리(CD-ROM)(112), 자기 광학(MO) 디스크(113), 디지털 다용도 디스크(DVD)(114), 자기 디스크(115), 또는 반도체 메모리(116)와 같은 저장 매체에 일시적으로 또는 영구히 설치됨으로써 패키지 소프트웨어로 제공될 수 있다.
다른 방법으로, 도 21c에 도시된 바와 같이, 프로그램은 디지털 위성 방송 인공 위성(122)을 통해 다운로드 위치(121)에서 컴퓨터(101)로 전달되거나, 구내 통신망(LAN) 또는 인터넷과 같은 네트워크(131)를 통해 컴퓨터(101)에 케이블로 전달되고, 컴퓨터(101)에 설치된 하드 디스크(101)에 저장될 수 있다.
본 명세서에서 논의되는 매체는 상술된 매체를 포함하여 가장 폭넓은 개념을 내포한다.
매체에 의해 제공되는 프로그램을 형성하는 단계는 본 명세서에서 설명된 시간-일련 순서에 따라 실행될 수 있다. 다른 방법으로, 상술된 단계는 시간-일련 순서로 실시되지 않고 개별적으로 또는 나란히 실시될 수 있다(예를 들면, 객체 처리).
도 22는 도 21a 및 도 21c에 도시된 컴퓨터(101)의 구성예를 설명한다.
컴퓨터(101)는 도 22에 도시된 바와 같이 내장된 중앙 처리 유닛(CPU)(142)을 갖는다. 입력/출력 인터페이스(145)는 버스(141)를 통해 CPU(142)에 연결된다. 입력/출력 인터페이스(145)를 통해 키보드, 마우스 등으로 구성되는 입력 유닛(147)을 동작시켜 사용자로부터 지시를 입력하면, CPU(142)는 도 21a에 도시된 반도체 메모리(103)에 대응하는 판독 전용 메모리(ROM)(143)에 저장된 프로그램을 실행시킨다. 다른 방법으로, CPU(142)는 하드 디스크(102)에 저장된 프로그램, 위성(122)이나 네트워크(131)로부터 통신 유닛(148)에 전달되어 하드 디스크(102)에 설치된 프로그램, 또는 드라이브(149)에 로드(load)된 플로피 디스크(111), CD-ROM(112), MO 디스크(113), DVD(114), 또는 자기 디스크(115)로부터 판독되어 하드 디스크(102)에 설치된 프로그램을 랜덤 액세스 메모리(RAM)(144)에 로드시킨다. 이어서, CPU(142)는 로드된 프로그램을 실시한다. CPU(142)는 입력/출력 인터페이스(145)를 통해 예를 들어 액정 디스플레이(LCD)로 형성된 디스플레이 유닛에 처리 결과를 적절하게 출력한다.
제 1 및 제 2 실시예에 따라, 매입 코딩 처리 및 디코딩 처리를 실행할 때, 이미지는 4 x 4 - 픽셀 블록으로 분할된다. 그러나, 한 블록을 형성하는 픽셀의 수는 제한되지 않는다. 부가하여, 블록의 구성은 직사각형이나 정사각형으로 제한되지 않는다.
비록 상기 실시예에서는 추가 정보가 프레임을 형성하는 모든 블록에 매입되지만, 프레임을 형성하는 블록의 일부에만 매입될 수 있다. 이 경우, 추가 정보가 없는 블록을 형성하는 픽셀은 추가 정보가 매입된 블록을 디코딩할 때 상관관계 값을 계산하는데 사용된다.
상술된 실시예에서, 한 프레임은 블록으로 분할되고, 추가 정보는 분할된 블록으로 매입된다. 그러나, 추가 정보를 매입할 때, 각 프레임은 블록으로 분할되기 보다는 한 블록으로 사용되거나, 다수의 프레임이 하나의 블록으로 사용될 수 있다.
제 2 실시예에서, 픽셀값이 YUV 또는 RGB와 같이 다수의 구성성분으로 나타내지면, 배타적 논리합은 똑같은 추가 성분과 모든 구성성분 사이에서 계산된다. 다른 방법으로, 배타적 논리합은 각각의 구성성분과 다른 항목의 추가 정보 사이에서 계산될 수 있다.
제 2 실시예에서, 블록을 형성하는 일부 픽셀은 체크형 패턴에 따라 선택되고, 추가 정보는 선택된 픽셀에 매입된다. 그러나, 추가 정보를 매입하는데 사용되는 일부 픽셀은 다른 패턴에 따라 선택될 수 있다. 부가하여, 제 2 실시예에서는 블록을 형성하는 픽셀의 절반이 선택되고, 배타적 논리합이 선택 픽셀값과 추가 정보 사이에서 계산되지만, 배타적 논리합을 계산하는데 사용되는 픽셀의 수는 블록을 형성하는 픽셀의 절반에 제한되지 않는다. 그러나, 상술된 바와 같이, 추가 정보가 매입된 픽셀을 디코딩할 때, 상관관계 값은 추가 정보가 없는 픽셀을 사용해 바람직하게 결정될 수 있다. 픽셀 사이의 상관관계는 픽셀이 공간상으로 또는 시간상으로 서로 멀리 있을 때 더 작아진다. 그러므로, 정확한 디코딩 동작을 실행하기 위해, 추가 정보가 매입되는 픽셀은 공간상으로 또는 시간상으로 드문드문 위치하는 방식으로 선택된다.
제 2 실시예에서, 정상 비트 스트림 픽셀 및 반전 비트 스트림 픽셀은 선택 픽셀의 대각선 방향으로 번갈아 위치하도록 선택된다. 그러나, 정상 비트 스트림 픽셀 및 반전 비트 스트림 픽셀은 다른 패턴에 따라 배열될 수 있다.
제 2 실시예에서, 일부 선택 픽셀은 정상 비트 스트림 픽셀인 것으로 결정되고, 나머지 선택 픽셀은 반전 비트 스트림 픽셀인 것으로 결정되어, 각 픽셀과 추가 정보 사이에서 배타적 논리합이 계산된다. 그러나, 모든 선택 픽셀이 정상 비트 스트림 픽셀 또는 반전 비트 스트림 픽셀로 결정될 수 있다.
비록 제 2 실시예에서는 추가 정보가 픽셀값과 추가 정보 사이의 배타적 논리합을 계산하여 매입되지만, 또 다른 논리적 연산이 픽셀에 실행될 수 있다. 그러나, 계산된 결과는 배타적 논리합과 같이, 매입 코딩 동작을 실행하는데 사용되는 것과 같은 종류의 논리적 연산을 실행함으로써 원래 값으로 바람직하게 회복된다.
추가 정보의 종류는 특별하게 제한되지 않는다. 예를 들면, 이미지, 사운드, 텍스트(text), 컴퓨터 프로그램, 및 다른 종류의 데이터가 추가 정보로 매입될 수 있다. 이미지 데이터베이스(1)에 저장된 이미지의 일부는 추가 정보로 사용될 수 있고, 나머지 이미지는 프레임 메모리(31)로 공급된다. 이 경우, 추가 정보는 코딩되는 이미지에 매입될 수 있고, 그에 의해 이미지 압축을 실시하게 된다.

Claims (29)

  1. 이미지 데이터에 정보를 매입하는(embedding) 이미지 처리 장치에 있어서,
    상기 이미지 데이터를 형성하는 일부 픽셀(pixel)들을 선택하는 선택 수단; 및
    상기 정보에 따라 상기 선택된 픽셀들의 값들의 비트들을 교환(swapping)함으로써 상기 선택 수단에 의해 선택된 상기 픽셀들에 상기 정보를 매입하는 변경 수단을 구비하는, 이미지 처리 장치.
  2. 제 1 항에 있어서,
    상기 변경 수단은 상기 정보에 따라 상기 선택된 픽셀값들의 비트들을 회전시킴으로써 상기 선택된 픽셀들에 상기 정보를 매입하는, 이미지 처리 장치.
  3. 제 2 항에 있어서,
    상기 변경 수단은 상기 선택된 픽셀들의 일부를 최하위 비트에서 최상위 비트의 방향으로 회전시키고, 상기 선택된 픽셀들의 나머지를 상기 최상위 비트에서 상기 최하위 비트의 방향으로 회전시키는, 이미지 처리 장치.
  4. 제 1 항에 있어서,
    상기 이미지 데이터를 미리 정해진 이미지 블록으로 분할하는 분할 수단을 더 구비하고, 상기 선택 수단은 상기 이미지 블록을 형성하는 상기 픽셀들의 일부를 선택하는, 이미지 처리 장치.
  5. 제 4 항에 있어서,
    상기 변경 수단은 이미지 블록 당 정보의 단편(single piece)에 따라 상기 선택된 픽셀값들의 비트들을 교환함으로써 이미지 블록들의 단위로 상기 선택된 픽셀들에 상기 정보를 매입하는, 이미지 처리 장치.
  6. 제 5 항에 있어서,
    상기 변경 수단은 상기 이미지 블록 당 정보에 따라, 상기 이미지 블록들의 각각을 형성하는 상기 선택된 픽셀값들의 일부를 최하위 비트에서 최상위 비트의 방향으로 회전시키고, 상기 이미지 블록을 형성하는 상기 픽셀값들의 나머지를 상기 최상위 비트에서 상기 최하위 비트의 방향으로 회전시키는, 이미지 처리 장치.
  7. 정보가 매입된 코딩된 이미지 데이터를 원래의 이미지 데이터 및 상기 정보로 디코딩하는 이미지 처리 장치에 있어서,
    상기 코딩된 이미지 데이터를 형성하는 일부 픽셀들을 선택하는 선택 수단;
    상기 선택 수단에 의해 선택된 상기 픽셀들의 값들의 비트들을 교환하는 변경 수단;
    상기 변경된 픽셀들과, 상기 선택 수단에 의해 선택된 상기 픽셀들 이외의 픽셀들 사이에서 상관관계(correlation)를 계산하는 상관관계 계산 수단;
    상기 상관관계 계산 수단에 의해 계산된 상기 상관관계에 기초하여, 상기 선택된 픽셀값들이 변경되는 양을 결정하는 결정 수단으로써, 상기 양은 상기 선택된 픽셀들을 디코딩하는데 사용되는 상기 결정 수단; 및
    상기 결정 수단에 의해 결정된 상기 양에 기초하여 상기 선택된 픽셀들을 디코딩하고, 상기 선택된 픽셀들에 매입되는 상기 정보를 디코딩하는 디코딩 수단을 구비하는, 이미지 처리 장치.
  8. 제 7 항에 있어서,
    상기 변경 수단은 상기 선택된 픽셀값들의 비트들을 회전시키는, 이미지 처리 장치.
  9. 제 8 항에 있어서,
    상기 변경 수단은 상기 선택된 픽셀들의 일부를 최하위 비트에서 최상위 비트의 방향으로 회전시키고, 상기 선택된 픽셀들의 나머지를 상기 최상위 비트에서 상기 최하위 비트의 방향으로 회전시키는, 이미지 처리 장치.
  10. 제 7 항에 있어서,
    상기 이미지 데이터를 미리 정해진 이미지 블록으로 분할하는 분할 수단을 더 구비하고, 상기 선택 수단은 상기 이미지 블록을 형성하는 상기 픽셀들의 일부를 선택하는, 이미지 처리 장치.
  11. 제 7 항에 있어서,
    상기 상관관계 계산 수단은 상기 변경된 픽셀들과 상기 변경된 픽셀들 주위에 위치하는 상기 선택된 픽셀들 이외의 픽셀들 사이에서 상기 상관관계를 계산하는, 이미지 처리 장치.
  12. 제 7 항에 있어서,
    상기 상관관계 계산 수단은 상기 변경된 픽셀들과 상기 변경된 픽셀들 주위에 위치하는 상기 선택된 픽셀들 이외의 픽셀들 사이에서의 상기 상관관계와, 상기 변경된 픽셀들과 상기 디코딩된 픽셀들 사이에서의 상기 상관관계를 계산하는, 이미지 처리 장치.
  13. 제 8 항에 있어서,
    상기 결정 수단은 상기 상관관계를 최대화시키도록 상기 선택된 픽셀값들이 회전되는 양을 결정하고, 상기 디코딩 수단은 상기 결정 수단에 의해 결정된 상기 양에 기초하여 상기 선택된 픽셀들을 디코딩하고 상기 선택된 픽셀들에 매입되는 상기 정보를 디코딩하는, 이미지 처리 장치.
  14. 제 10 항에 있어서,
    상기 변경 수단은 상기 이미지 블록을 형성하는 상기 선택된 픽셀값들의 비트들을 동일한 양만큼 교환하고; 상기 상관관계 계산 수단은 상기 변경된 픽셀들과 상기 변경된 픽셀들 주위에 위치하는 상기 선택된 픽셀들 이외의 픽셀들 사이에서 상기 상관관계를 계산하고; 상기 결정 수단은 상기 상관관계에 기초하여 상기 픽셀값들이 변경되는 상기 동일한 양을 결정하고, 상기 동일한 양은 상기 선택된 픽셀들을 디코딩하는데 사용되며; 상기 디코딩 수단은 상기 결정 수단에 의해 결정된 상기 동일한 양에 기초하여 상기 선택된 픽셀들을 디코딩하고 상기 선택된 픽셀들에 매입되는 상기 정보의 단편을 디코딩하는, 이미지 처리 장치.
  15. 제 14 항에 있어서,
    상기 변경 수단은 상기 이미지 블록을 형성하는 상기 선택된 픽셀들의 일부를 최하위 비트에서 최상위 비트의 방향으로 회전시키고, 상기 선택된 픽셀들의 나머지를 상기 최상위 비트에서 상기 최하위 비트의 방향으로 회전시키는, 이미지 처리 장치.
  16. 정보가 매입된 코딩된 이미지 데이터를 원래의 이미지 데이터 및 상기 정보로 디코딩하는 이미지 처리 장치에 있어서,
    상기 코딩된 이미지 데이터를 형성하는 일부 픽셀들을 선택하는 선택 수단;
    상기 선택 수단에 의해 선택된 상기 픽셀들의 값들과 미리 정해진 데이터 사이에서 배타적 논리합(exclusive-OR)을 계산하는 계산 수단;
    상기 계산 수단에 의해 계산된 상기 픽셀들과 상기 선택된 픽셀들 이외의 픽셀들 사이에서 상관관계를 계산하는 상관관계 계산 수단;
    상기 상관관계 계산 수단에 의해 계산된 상기 상관관계에 기초하여 상기 선택된 픽셀들을 디코딩하기 위해 상기 선택된 픽셀들과 상기 배타적 논리합을 계산하는데 사용된 상기 미리 정해진 데이터를 결정하는 결정 수단; 및
    상기 결정 수단에 의해 결정된 상기 데이터에 기초하여 상기 선택된 픽셀들을 디코딩하고 상기 선택된 픽셀들에 매입된 상기 정보를 디코딩하는 디코딩 수단을 구비하는, 이미지 처리 장치.
  17. 제 16 항에 있어서,
    상기 계산 수단은 상기 선택된 픽셀값들의 일부와 상기 미리 정해진 데이터를 나타내는 비트 스트림(bit stream) 사이에서 상기 배타적 논리합을 계산하고, 상기 선택된 픽셀값들의 나머지와 상기 미리 정해진 데이터를 나타내는 상기 비트 스트림의 순서를 반전시켜 구해진 비트 스트림 사이에서 상기 배타적 논리합을 계산하는, 이미지 처리 장치.
  18. 제 16 항에 있어서,
    상기 이미지 데이터를 미리 정해진 데이터 블록으로 분할하는 분할 수단을 더 구비하고, 상기 선택 수단은 상기 이미지 블록을 형성하는 상기 픽셀들의 일부를 선택하는, 이미지 처리 장치.
  19. 제 16 항에 있어서,
    상기 상관관계 계산 수단은 상기 계산 수단에 의해 계산된 상기 픽셀들과 상기 선택된 픽셀들 주위에 위치하는 상기 선택된 픽셀들 이외의 상기 픽셀들 사이에서 상기 상관관계를 계산하는, 이미지 처리 장치.
  20. 제 16 항에 있어서,
    상기 상관관계 계산 수단은 상기 계산 수단에 의해 계산된 상기 픽셀들과 상기 선택된 픽셀들 주위에 위치하는 상기 선택된 픽셀들 이외의 픽셀들 사이에서 상기 상관관계를 계산하고, 상기 계산 수단에 의해 계산된 상기 픽셀들과 상기 디코딩된 픽셀들 사이에서 상기 상관관계를 계산하는, 이미지 처리 장치.
  21. 제 16 항에 있어서,
    상기 결정 수단은 상기 상관관계를 최대화하도록 상기 선택된 픽셀들과 상기 배타적 논리합을 계산하는데 사용된 상기 미리 정해진 데이터를 결정하고, 상기 디코딩 수단은 상기 결정 수단에 의해 결정된 상기 데이터에 기초하여 상기 선택된 픽셀들을 디코딩하고 상기 선택된 픽셀들에 매입되는 상기 미리 정해진 정보를 디코딩하는, 이미지 처리 장치.
  22. 제 18 항에 있어서,
    상기 계산 수단은 상기 이미지 블록을 형성하는 상기 선택된 픽셀들의 각각과 상기 미리 정해진 데이터 사이에서 상기 배타적 논리합을 계산하고; 상기 상관관계 계산 수단은 상기 계산 수단에 의해 계산된 상기 픽셀들과 상기 선택된 픽셀들 주위에 위치하는 상기 선택된 픽셀들 이외의 픽셀들 사이에서 상기 상관관계를 계산하고; 상기 결정 수단은 상기 상관관계 계산 수단에 의해 계산된 상기 상관관계에 기초하여 상기 선택된 픽셀들을 디코딩하는데 사용된 상기 미리 정해진 데이터를 결정하고; 상기 디코딩 수단은 상기 결정 수단에 의해 결정된 상기 미리 정해진 데이터에 기초하여 상기 선택된 픽셀들을 디코딩하고 상기 선택된 픽셀들에 매입된 정보의 단편을 디코딩하는, 이미지 처리 장치.
  23. 제 22 항에 있어서,
    상기 계산 수단은 상기 이미지 블록을 형성하는 상기 선택된 픽셀값들의 일부와 상기 미리 정해진 데이터를 나타내는 비트 스트림 사이에서 상기 배타적 논리합을 계산하고, 상기 픽셀값들의 나머지와 상기 미리 정해진 데이터를 나타내는 상기 비트 스트림의 순서를 반전시켜 구해진 비트 스트림 사이에서 상기 배타적 논리합을 계산하는, 이미지 처리 장치.
  24. 이미지 데이터에 정보를 매입하는 이미지 처리 방법에 있어서,
    상기 이미지 데이터를 형성하는 일부 픽셀들을 선택하는 선택 단계; 및
    상기 정보에 따라 상기 선택된 픽셀들의 값들의 비트들을 교환함으로써 상기 선택 단계에서 선택된 상기 픽셀들에 상기 정보를 매입하는 매입 단계를 구비하는, 이미지 처리 방법.
  25. 정보가 매입된 코딩된 이미지 데이터를 원래의 이미지 데이터 및 상기 정보로 디코딩하는 이미지 처리 방법에 있어서,
    상기 코딩된 이미지 데이터를 형성하는 일부 픽셀들을 선택하는 선택 단계;
    상기 선택 단계에서 선택된 상기 픽셀들의 값들의 비트들을 교환하는 교환 단계;
    상기 교환된 픽셀들과 상기 선택된 픽셀들 이외의 픽셀들 사이에서 상관관계를 계산하는 상관관계 계산 단계;
    상기 상관관계 계산 단계에서 계산된 상기 상관관계에 기초하여, 상기 선택된 픽셀값들이 변경되는 양을 결정하는 결정 단계로서, 상기 양은 상기 선택된 픽셀들을 디코딩하는데 사용되는, 상기 결정 단계; 및
    상기 결정 단계에서 결정된 상기 양에 기초하여 상기 선택된 픽셀들을 디코딩하고 상기 선택된 픽셀들에 매입된 상기 정보를 디코딩하는 디코딩 단계를 구비하는, 이미지 처리 방법.
  26. 정보가 매입된 코딩된 이미지 데이터를 원래의 이미지 데이터 및 상기 정보로 디코딩하는 이미지 처리 방법에 있어서,
    상기 코딩된 이미지 데이터를 형성하는 일부 픽셀들을 선택하는 선택 단계;
    상기 선택 단계에서 선택된 상기 픽셀들의 값들과 미리 정해진 데이터 사이에서 배타적 논리합을 계산하는 계산 단계;
    상기 계산 단계에서 계산된 상기 픽셀들과 상기 선택된 픽셀들 이외의 픽셀들 사이에서 상관관계를 계산하는 상관관계 계산 단계;
    상기 상관관계 계산 단계에서 계산된 상기 상관관계에 기초하여, 상기 선택된 픽셀들을 디코딩하기 위해 상기 선택된 픽셀들과 상기 배타적 논리합을 계산하는데 사용된 상기 미리 정해진 데이터를 결정하는 결정 단계; 및
    상기 결정 단계에서 결정된 상기 미리 정해진 데이터에 기초하여 상기 선택된 픽셀들을 디코딩하고 상기 선택된 픽셀들에 매입된 상기 정보를 디코딩하는 디코딩 단계를 구비하는, 이미지 처리 방법.
  27. 이미지 데이터에 정보를 매입하기 위한 컴퓨터 제어 프로그램을 저장하는 저장 매체에 있어서, 상기 프로그램은:
    상기 이미지 데이터를 형성하는 일부 픽셀들을 선택하는 선택 단계; 및
    상기 정보에 따라 상기 선택된 픽셀들의 값들의 비트들을 교환함으로써 상기 선택 단계에서 선택된 상기 픽셀들에 상기 정보를 매입하는 매입 단계를 구비하는, 저장 매체.
  28. 정보가 매입된 코딩된 이미지 데이터를 원래의 이미지 데이터 및 상기 정보로 디코딩하기 위한 컴퓨터 제어 프로그램을 저장하는 저장 매체에 있어서, 상기 프로그램은:
    상기 코딩된 이미지 데이터를 형성하는 일부 픽셀들을 선택하는 선택 단계;
    상기 선택 단계에서 선택된 상기 픽셀들의 값들의 비트들을 교환하는 교환 단계;
    상기 교환된 픽셀들과 상기 선택된 픽셀들 이외의 픽셀들 사이에서 상관관계를 계산하는 상관관계 계산 단계;
    상기 상관관계 계산 단계에서 계산된 상기 상관관계에 기초하여, 상기 선택된 픽셀값들이 변경되는 양을 결정하는 단계로서, 상기 양은 상기 선택된 픽셀들을 디코딩하는데 사용되는, 상기 결정 단계; 및
    상기 결정 단계에서 결정된 상기 양에 기초하여 상기 선택된 픽셀들을 디코딩하고 상기 선택된 픽셀들에 매입된 상기 정보를 디코딩하는 디코딩 단계를 구비하는, 저장 매체.
  29. 정보가 매입된 코딩된 이미지 데이터를 원래의 이미지 데이터 및 상기 정보로 디코딩하기 위한 컴퓨터 제어 프로그램을 저장하는 저장 매체에 있어서, 상기 프로그램은:
    상기 코딩된 이미지 데이터를 형성하는 일부 픽셀들을 선택하는 선택 단계;
    상기 선택 단계에서 선택된 상기 픽셀들의 값들과 미리 정해진 데이터 사이에서 배타적 논리합을 계산하는 계산 단계;
    상기 계산 단계에서 계산된 상기 픽셀들과 상기 선택된 픽셀들 이외의 픽셀들 사이에서 상관관계를 계산하는 상관관계 계산 단계;
    상기 상관관계 계산 단계에서 계산된 상기 상관관계에 기초하여, 상기 선택된 픽셀들을 디코딩하기 위해 상기 선택된 픽셀들과 상기 배타적 논리합을 계산하는데 사용된 상기 미리 정해진 데이터를 결정하는 결정 단계; 및
    상기 결정 단계에서 결정된 상기 미리 정해진 데이터에 기초하여 상기 선택된 픽셀들을 디코딩하고 상기 선택된 픽셀들에 매입된 상기 정보를 디코딩하는 디코딩 단계를 구비하는, 저장 매체.
KR1020000030985A 1999-06-08 2000-06-07 이미지 처리 장치, 이미지 처리 방법 및 저장 매체 KR100667612B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP16053099A JP4099687B2 (ja) 1999-06-08 1999-06-08 画像処理装置および画像処理方法、並びに媒体
JP16052999A JP4092608B2 (ja) 1999-06-08 1999-06-08 画像処理装置および画像処理方法、並びにプログラム格納媒体
JP99-160529 1999-06-08
JP99-160530 1999-06-08

Publications (2)

Publication Number Publication Date
KR20010007261A KR20010007261A (ko) 2001-01-26
KR100667612B1 true KR100667612B1 (ko) 2007-01-15

Family

ID=26487012

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000030985A KR100667612B1 (ko) 1999-06-08 2000-06-07 이미지 처리 장치, 이미지 처리 방법 및 저장 매체

Country Status (5)

Country Link
US (3) US6870944B1 (ko)
EP (1) EP1059606B1 (ko)
KR (1) KR100667612B1 (ko)
CN (1) CN1148964C (ko)
DE (1) DE60030911T2 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100341330C (zh) * 2005-02-25 2007-10-03 吉林大学 音视频混合信号同步压缩中的音频嵌入视频及其提取方法
JP4650123B2 (ja) * 2005-06-27 2011-03-16 ソニー株式会社 画像処理装置、画像処理方法、およびプログラム
US8478074B2 (en) 2006-07-07 2013-07-02 Microsoft Corporation Providing multiple and native representations of an image
US7920749B1 (en) * 2006-12-20 2011-04-05 Nvidia Corporation Modified high dynamic range color decompression
EP2234400A1 (en) * 2009-03-23 2010-09-29 Sony Corporation Method and device for providing a multimedia content stream embedding processing information for the content
JP5471580B2 (ja) * 2010-02-23 2014-04-16 富士ゼロックス株式会社 画像処理装置及びプログラム
JP5562812B2 (ja) * 2010-11-22 2014-07-30 株式会社東芝 送受切替回路、無線装置および送受切替方法
CN104581120A (zh) * 2015-01-23 2015-04-29 深圳超多维光电子有限公司 图像信息保存方法、保存装置、立体图像生成方法和装置
JP6819096B2 (ja) * 2016-06-30 2021-01-27 オムロン株式会社 画像処理装置、画像処理方法、および画像処理プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR950013263A (ko) * 1993-10-28 1995-05-17 배순훈 패킷 동영상부호기 및 복호기에 있어서 패킷손실에 대한 효율적인 복호방법
JPH08214314A (ja) * 1995-02-02 1996-08-20 Canon Inc 画像伝送装置
JPH10210428A (ja) * 1997-01-17 1998-08-07 Matsushita Electric Ind Co Ltd 番組送信装置、番組受信装置、及び番組放送システム
KR19990041929A (ko) * 1997-11-25 1999-06-15 전주범 영상 부호화 시스템의 압축율 자동-변환 장치

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2101838B (en) * 1981-04-20 1986-03-05 Canon Kk Image processing method and apparatus therefor
JP2670273B2 (ja) * 1987-09-30 1997-10-29 株式会社東芝 画像処理装置
EP0766468B1 (en) * 1995-09-28 2006-05-03 Nec Corporation Method and system for inserting a spread spectrum watermark into multimedia data
US5734752A (en) * 1996-09-24 1998-03-31 Xerox Corporation Digital watermarking using stochastic screen patterns
TW312770B (en) * 1996-10-15 1997-08-11 Japen Ibm Kk The hiding and taking out method of data
US5835639A (en) * 1996-12-18 1998-11-10 Eastman Kodak Company Method for detecting rotation and magnification in images
JPH10336595A (ja) * 1997-06-05 1998-12-18 Mitsubishi Electric Corp デコーダ
JP4182603B2 (ja) * 1998-10-07 2008-11-19 ソニー株式会社 符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置
JP4822304B2 (ja) * 1998-08-06 2011-11-24 ソニー株式会社 画像処理装置および画像処理方法、並びに記録媒体
JP3748495B2 (ja) 1998-12-11 2006-02-22 キヤノン株式会社 画像処理方法、画像処理装置、画像配付システム及び記憶媒体
JP3682382B2 (ja) 1999-01-25 2005-08-10 大日本印刷株式会社 画像処理システム及び記録媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR950013263A (ko) * 1993-10-28 1995-05-17 배순훈 패킷 동영상부호기 및 복호기에 있어서 패킷손실에 대한 효율적인 복호방법
JPH08214314A (ja) * 1995-02-02 1996-08-20 Canon Inc 画像伝送装置
JPH10210428A (ja) * 1997-01-17 1998-08-07 Matsushita Electric Ind Co Ltd 番組送信装置、番組受信装置、及び番組放送システム
KR19990041929A (ko) * 1997-11-25 1999-06-15 전주범 영상 부호화 시스템의 압축율 자동-변환 장치

Also Published As

Publication number Publication date
US6870944B1 (en) 2005-03-22
CN1276681A (zh) 2000-12-13
EP1059606A2 (en) 2000-12-13
DE60030911T2 (de) 2007-04-05
US20050008192A1 (en) 2005-01-13
CN1148964C (zh) 2004-05-05
US7606431B2 (en) 2009-10-20
KR20010007261A (ko) 2001-01-26
EP1059606B1 (en) 2006-09-27
US20050013464A1 (en) 2005-01-20
EP1059606A3 (en) 2002-08-28
US6940996B2 (en) 2005-09-06
DE60030911D1 (de) 2006-11-09

Similar Documents

Publication Publication Date Title
KR100636606B1 (ko) 화상 처리 장치, 화상 처리 방법 및 기록 매체
US6546139B1 (en) Coding apparatus and method, decoding apparatus and method, data processing system, storage medium, and signal
CA2291383C (en) Control method and apparatus for embedding information in data
US7738711B2 (en) Coding apparatus and method, decoding apparatus and method, data processing system, storage medium, and signal
JP4214440B2 (ja) データ処理装置およびデータ処理方法、並びに記録媒体
KR100667612B1 (ko) 이미지 처리 장치, 이미지 처리 방법 및 저장 매체
JP4556087B2 (ja) データ処理装置およびデータ処理方法、並びにプログラムおよびプログラム記録媒体
JP2000232365A (ja) 符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置
US6738492B1 (en) Coding apparatus and method, decoding apparatus and method, data processing system, storage medium, and signal
KR100711012B1 (ko) 코딩 장치 및 방법, 디코딩 장치 및 방법, 데이터 처리 시스템, 기억 매체 및 신호
JP4099687B2 (ja) 画像処理装置および画像処理方法、並びに媒体
KR100720298B1 (ko) 코딩 장치 및 방법, 디코딩 장치 및 방법, 데이터 처리 시스템, 저장 매체, 및 신호
JP4092608B2 (ja) 画像処理装置および画像処理方法、並びにプログラム格納媒体
KR100777144B1 (ko) 코딩 장치와 방법, 디코딩 장치와 방법, 데이터 처리 시스템, 저장 매체, 및 기록 매체
JP2003125194A (ja) データ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体
JP4182676B2 (ja) 画像信号伝送装置および方法、並びに画像信号受信装置および方法
JP4591767B2 (ja) 符号化装置および方法、復号装置および方法、画像処理システム、記録媒体、並びにプログラム
JP2000324482A (ja) データ処理装置およびデータ処理方法、並びに画像処理装置および画像処理方法
JP2003235039A (ja) 符号化処理装置、復号処理装置、および方法、並びにコンピュータ・プログラム

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20111227

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20121231

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee