CN101355699B - 数据处理装置 - Google Patents

数据处理装置 Download PDF

Info

Publication number
CN101355699B
CN101355699B CN2008100955695A CN200810095569A CN101355699B CN 101355699 B CN101355699 B CN 101355699B CN 2008100955695 A CN2008100955695 A CN 2008100955695A CN 200810095569 A CN200810095569 A CN 200810095569A CN 101355699 B CN101355699 B CN 101355699B
Authority
CN
China
Prior art keywords
data
decoding
coding
unit
pixel value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2008100955695A
Other languages
English (en)
Other versions
CN101355699A (zh
Inventor
近藤哲二郎
安藤一隆
太田浩二
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of CN101355699A publication Critical patent/CN101355699A/zh
Application granted granted Critical
Publication of CN101355699B publication Critical patent/CN101355699B/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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
    • 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/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • 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/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00884Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a watermark, i.e. a barely perceptible transformation of the original data which can nevertheless be recognised by an algorithm
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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
    • 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
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0053Embedding of the watermark in the coding stream, possibly without decoding; Embedding of the watermark in the compressed domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3269Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of machine readable codes or marks, e.g. bar codes or glyphs
    • H04N2201/327Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of machine readable codes or marks, e.g. bar codes or glyphs which are undetectable to the naked eye, e.g. embedded codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/328Processing of the additional information
    • H04N2201/3283Compression

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)
  • Television Systems (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明涉及一种数据处理装置。附加信息被嵌入通过编码图像数据所获得的编码的数据中,而不增加编码的数据的总量,并且,嵌入附加信息的数据被正确地解码为图像数据和附加信息。嵌入压缩编码器(11)依据预定的编码规则编码图像数据,基于附加信息破坏编码规则,从而嵌入附加信息。解码器(12)将通过嵌入附加信息所获得的嵌入编码的数据恢复为依据编码规则编码的编码的数据,从而解码附加信息,也将编码的数据解码为图像数据。

Description

数据处理装置
本申请为2001年10月12日提交的、申请号为01804259.7、发明名称为“数据处理装置”的申请案的分案申请。
技术领域
本发明涉及一种数据处理装置,尤其涉及一种能够将信息嵌入图像中而不降低解码后的图像的质量或增加数据总量的数据处理装置。
背景技术
用于将信息嵌入数据中而不增加数据总量的方法是存在的,例如,将数字音频数据的最低比特或低级的两个比特变为要被嵌入的信息。该方法利用低级比特对声音质量的影响并不是很明显这样的事实,简单地用要被嵌入的信息取代数字音频数据的低级比特。因此,当数字音频数据被回放时,含有嵌入其中的信息的数字音频数据并不恢复低级比特而被输出。即,因为将含有嵌入信息的低级比特恢复为原始数字音频数据是困难的,并且低级比特并不太影响声音的质量,所以该含有嵌入信息的数字音频数据被输出。
依据上述方法,然而,与原始数据不同的数据被输出。因此,当该数据是音频数据时,将对声音质量产生很大的影响,而当该数据是视频数据时,将对图像质量产生很大的影响。
发明内容
本发明是针对上述情况而发明的,它能够使信息被嵌入进如图像中而不降低图像的质量或增加数据总量。
依据本发明的第一数据处理装置包括:编码部件,用于压缩编码第一数据以输出压缩的数据;以及嵌入部件,用于通过基于第二数据修改压缩的数据的一部分,而将第二数据嵌入从编码部件输出的压缩的数据中。
依据本发明的第一数据处理方法是这样一种方法:第一数据被压缩编码以输出压缩的数据,以及,基于第二数据修改压缩的数据的一部分,以便将第二数据嵌入压缩的数据中。
依据本发明的第一存储介质存储这样一个程序:第一数据被编码以输出编码的数据,以及,基于第二数据修改编码的数据的一部分,以便将第二数据嵌入编码的数据中。
依据本发明的第一数据处理装置、第一数据处理方法以及第一存储介质,第一数据被编码以输出编码的数据。然后,基于第二数据修改编码的数据的一部分,于是将第二数据嵌入编码的数据中。
依据本发明的第二数据处理装置包括:编码表生成部件,用于生成用于编码第一数据的编码表;修改的编码表生成部件,用于基于第二数据修改编码表生成部件所生成的编码表以生成修改的编码表;以及,嵌入编码的数据生成部件,用于基于修改的编码表编码第一数据以生成嵌入第二数据的嵌入编码的数据。
依据本发明的第二数据处理方法是这样一种方法:生成用于编码第一数据的编码表,基于第二数据修改生成的编码表以生成修改的编码表,以及基于修改的编码表编码第一数据,以生成嵌入第二数据的嵌入编码的数据。
依据本发明的第二存储介质存储这样一个程序:生成用于编码第一数据的编码表,基于第二数据修改生成的编码表以生成修改的编码表,以及基于修改的编码表编码第一数据,以生成嵌入第二数据的嵌入编码的数据。
依据本发明的第二数据处理装置、第二数据处理方法以及第二存储介质,生成用于编码第一数据的编码表,以及基于第二数据修改编码表生成部件所生成的编码表以生成修改的编码表。然后基于修改的编码表编码第一数据以生成嵌入第二数据的嵌入编码的数据。
依据本发明的第三数据处理装置包括:暂定的解码部件,用于基于编码表暂定的解码通过将第二数据嵌入第一数据中所编码的嵌入编码的数据,以输出暂定的解码的数据;暂定的编码表生成部件,用于基于暂定的解码的数据生成暂定的编码表;第一解码的数据获得部件,用于基于编码表和暂定的编码表解码嵌入编码的数据以获得第一解码的数据;以及第二解码的数据获得部件,用于通过比较编码表和暂定的编码表获得第二解码的数据。
依据本发明的第三数据处理方法是这样一种方法:基于编码表暂定地解码通过将第二数据嵌入第一数据中所编码的嵌入编码的数据,以输出暂定的解码的数据,基于暂定的解码的数据生成暂定的编码表,基于编码表和暂定的编码表解码嵌入编码的数据以获得第一解码的数据,以及通过比较编码表和暂定的编码表以获得第二解码的数据。
依据本发明的第三存储介质存储这样一个程序:基于编码表暂定地解码通过将第二数据嵌入第一数据中所编码的嵌入编码的数据,以输出暂定的解码的数据,基于暂定的解码的数据生成暂定的编码表,基于编码表和暂定的编码表解码嵌入编码的数据以获得第一解码的数据,以及通过比较编码表和暂定的编码表以获得第二解码的数据。
依据本发明的第三数据处理装置、第三数据处理方法以及第三存储介质,基于编码表暂定地解码通过将第二数据嵌入第一数据中所编码的嵌入编码的数据,以输出暂定的解码的数据。另外,基于暂定的解码的数据生成暂定的编码表,以及基于编码表和暂定的编码表解码嵌入编码的数据以获得第一解码的数据。比较编码表和暂定的编码表以获得第二解码的数据。
依据本发明的第四数据处理装置包括:暂定的解码部件,用于依据输入参数来修改通过将第二数据嵌入第一数据所编码的嵌入编码的数据的一部分,以及基于编码表暂定地解码嵌入编码的数据的一部分,以生成暂定的解码的数据;再编码部件,用于将暂定的解码的数据再次进行编码以输出再编码的数据;以及解码部件,用于通过比较嵌入编码的数据和再编码的数据来确定输入参数,输出基于编码表暂定解码已经基于该输入参数被部分修改过的嵌入编码的数据所获得的暂定的解码的数据,作为第一解码的数据,以及用于获得相应于该输入参数的第二解码的数据。
依据本发明的第四处理方法是这样一种方法:依据输入参数修改通过将第二数据嵌入第一数据中所编码的嵌入编码的数据的一部分,以及基于编码表将其暂定地解码以生成暂定的解码的数据,将暂定的解码的数据再次进行编码以输出再编码的数据,以及通过比较嵌入编码的数据和再编码的数据来确定参数,输出基于编码表暂定解码已经基于该参数被部分修改过的嵌入编码的数据所获得的暂定的解码的数据作为第一解码的数据,并且还获得相应于该参数的第二解码的数据。
依据本发明的第四处理介质存储这样一个程序:依据输入参数修改通过嵌入第二数据在第一数据中所编码的嵌入编码的数据的一部分,以及基于编码表将其暂定的解码以生成暂定的解码的数据,将暂定的解码的数据再次进行编码以输出再编码的数据,以及将暂定的解码的数据再编码以输出再编码的数据。通过比较嵌入编码的数据和再编码的数据来确定参数,输出基于编码表暂定解码已经基于该参数被部分修改过的嵌入编码的数据所获得的暂定的解码的数据,作为第一解码的数据,并且获得相应于该参数的第二解码的数据。
依据本发明的第四数据处理装置、第四数据处理方法以及第四存储介质,依据输入参数修改通过嵌入第二数据在第一数据中所编码的嵌入编码的数据的一部分,以及基于编码表将其暂定的解码以生成暂定的解码的数据。另外,将暂定的解码的数据再编码以输出再编码的数据。通过比较嵌入编码的数据和再编码的数据来确定参数,输出基于编码表暂定解码已经基于该参数被部分修改过的嵌入编码的数据所获得的暂定的解码的数据,作为第一解码的数据,以及用于获得相应于该参数的第二解码的数据。
依据本发明的第五数据处理装置包括:编码部件,用于依据压缩编码规则压缩编码第一数据以输出压缩的数据;以及修改部件,用于基于第二数据修改压缩编码规则;其中编码部件依据被修改部件修改了的压缩编码规则压缩编码第一数据,因此生成嵌入第二数据的嵌入压缩的数据。
依据本发明的第五数据处理方法是这样一种方法:依据压缩编码规则压缩编码第一数据以输出压缩的数据,基于第二数据修改压缩编码规则,依据被修改了的压缩编码规则压缩编码第一数据以生成嵌入第二数据的嵌入压缩的数据。
依据本发明的第五存储介质存储这样一种程序:依据编码规则编码第一数据以输出编码的数据,基于第二数据修改编码规则,依据被修改了的编码规则编码第一数据以生成嵌入第二数据的嵌入编码的数据。
依据本发明的第五数据处理装置、第五数据处理方法以及第五存储介质,依据编码规则编码第一数据以输出编码的数据。然后,基于第二数据修改编码规则,以及,依据被修改了的编码规则编码第一数据以生成嵌入第二数据的嵌入编码的数据。
依据本发明的第六数据处理装置包括:第一解码部件,用于解码通过将第二数据嵌入到通过压缩编码第一数据所获得的压缩数据中而获得的嵌入压缩的数据,以获得依据熵编码规则压缩编码的压缩的数据并获得第二数据;以及,第二解码部件,用于解码该压缩的数据以获得第一数据。
依据本发明的第六数据处理方法是这样一种方法:解码通过将第二数据嵌入到通过压缩编码第一数据所获得的压缩数据中而获得的嵌入压缩的数据,以获得依据熵编码规则压缩编码的压缩的数据并获得第二数据,以及,解码该压缩的数据以获得第一数据。
依据本发明的第六存储介质存储这样一种程序:解码通过将第二数据嵌入第一数据中所获得的嵌入编码的数据,以获得依据熵编码规则编码的编码的数据并获得第二数据,以及解码该编码的数据以获得第一数据。
依据本发明的第六数据处理装置、数据处理方法以及存储介质,解码通过将第二数据嵌入在第一数据中所获得的嵌入编码的数据,以获得依据熵编码规则编码的编码的数据并获得第二数据。另外,解码该编码的数据以获得第一数据。
依据本发明的数据处理系统包括一个编码装置,该编码装置包括编码部件,用于依据压缩编码规则压缩编码第一数据以输出压缩的数据;以及修改部件,用于基于第二数据修改压缩编码规则;其中编码部件依据被修改部件修改了的压缩编码规则压缩编码第一数据,以生成嵌入第二数据的嵌入编码的数据,该数据处理系统也包括一个解码装置,该解码装置包括第一解码部件,用于解码嵌入压缩的数据以获得依据压缩编码规则压缩编码的压缩的数据并获得第二数据;以及,第二解码部件,用于解码该压缩的数据以获得第一数据。
依据本发明的数据处理系统在编码装置中,依据压缩编码规则压缩编码第一数据以输出压缩的数据。然后,基于第二数据修改压缩编码规则,以及依据被修改了的压缩编码规则压缩编码第一数据以生成嵌入第二数据的嵌入压缩的数据。在解码装置中,解码嵌入压缩的数据以获得依据压缩编码规则压缩编码的压缩的数据并获得第二数据。然后,解码该压缩的数据以获得第一数据。
附图说明
图1示出了依据本发明的实施例的嵌入压缩/解码系统的结构的举例。
图2是一个方框图,示出了嵌入压缩编码器11的结构的第一举例。
图3是一个方框图,示出了可变长度编码单元23的结构的举例。
图4(A)-图4(F)是可变长度解码的示意图。
图5示出像素值的出现频率和分配给像素值的码的码长之间的关联的图。
图6示出了Huffman(霍夫曼)表的举例。
图7(A)-图7(C)示出了根据像素值的发生频率而分配的码以及码的转换。
图8示出了嵌入编码的数据的举例。
图9(A)-图(9D)示出了一种用于将嵌入编码的数据恢复为原始编码的数据的方法。
图10是一个流程图,示出了嵌入编码处理过程。
图11是一个流程图,示出了转换表生成处理过程。
图12是一个流程图,示出了编码的数据转换处理过程。
图13是一个方框图,示出了嵌入压缩编码器11的结构的第二个举例。
图14是一个方框图,示出了解码器12的结构的第一个举例。
图15是一个方框图,示出了可变长度解码单元56和可变长度解码单元56的结构的举例。
图16是一个方框图,示出了霍夫曼表生成单元53的结构的举例。
图17是一个方框图,示出了逆转换表生成单元54的结构的举例。
图18是一个流程图,示出了解码的处理过程。
图19是一个方框图,示出了嵌入压缩编码器11的结构的第三个举例。
图20是一个流程图,示出了嵌入编码处理的过程。
图21是一个方框图,示出了编码单元91的结构的举例。
图22示出了被矢量量化的编码的示意图。
图23是一个方框图,示出了嵌入单元92的结构的举例。
图24示出了通过行循环嵌入附加信息的示意图。
图25是一个流程图,示出了嵌入编码的处理过程。
图26是一个方框图,示出了解码器12的结构的第二个举例。
图27是一个流程图,示出了解码的处理过程。
图28是一个方框图,示出了编码规则恢复单元121的结构的举例。
图29是一个方框图,示出了解码单元122的结构的举例。
图30是一个方框图,示出了确定单元123的结构的举例。
图31(A)-图31(B)示出了确定单元123所进行的处理过程。
图32是一个流程图,示出了解码的处理过程。
图33是一个方框图,示出了解码器12的结构的第三个举例。
图34是一个方框图,示出了依据本发明的实施例的计算机结构的举例。
具体实施方式
图1示出了依据本发明的实施例的嵌入压缩/解码系统(系统指多个装置的逻辑组合,与组成装置是否位于一个包装内无关)的结构的举例。
该嵌入压缩/解码系统包括一个编码装置1和一个解码装置2。该编码装置1编码例如一幅要被编码的图像,以及该解码装置2将编码的结果解码为原始图像。
该编码装置1包括嵌入压缩编码器11。嵌入压缩编码器11编码图像并将信息(下文中当用到时被指作附加信息)嵌入图像中。嵌入压缩编码器11依据预定的编码规则编码该图像(数字图像数据)用于压缩,并基于附加信息(数字数据)修改或破坏该编码规则,从而嵌入附加信息以产生嵌入编码的数据用于输出。从嵌入压缩编码器11输出的嵌入编码的数据被记录在例如一个半导体存储器、磁光碟、磁盘、光盘、磁带或相变型磁盘的记录介质3上,或通过例如地面波、卫星链路、CATV(有线电视)网络、因特网或公共网络的传输介质4被发送,并这样被提供给解码装置2。
解码装置2包括通过记录介质3或传输介质4接收提供的嵌入编码的数据的解码器12。该解码器12将嵌入编码的数据恢复为依据预定的编码规则编码的编码的数据,从而解码嵌入其中的附加信息并解码编码的数据为原始图像。该解码图像被提供给没示出的监视器或其它相似的装置并显示。
应当理解,所述附加信息可以包括例如伴随原始图像的文本数据或声音数据,缩小的图像版本等,并且还可以包括与原始图像不相关的数据。即,任意数据(包括程序)可被用作附加信息。
另外,提供给嵌入压缩编码器11的用于编码的图像的一部分也可被用作附加信息。即,可以向嵌入压缩编码器11提供图像的一部分作为附加信息,同时提供图像的剩余部分作为要被编码的数据。
图2示出了图1中所示的嵌入压缩编码器11的结构的举例。
帧存储器21例如基于帧,存储提供给嵌入压缩编码器11的图像数据。附加信息存储器22存储提供给嵌入压缩编码器11的附加信息。
可变长度编码单元23对存储在帧存储器21中的图像数据应用可变长度编码或熵(entropy)编码例如霍夫曼编码,并向编码规则破坏单元25提供所得的编码的数据。可变长度编码单元23以下面描述的方式在霍夫曼编码的处理过程中生成霍夫曼表并将该霍夫曼表提供给转换表生成单元24。另外,可变长度编码单元23向多路复用器(MUX)26提供有关该霍夫曼表的信息,这将在获得对转换表生成单元24输出的霍夫曼表的过程中用到。
转换表生成单元24基于存储在附加信息存储器22中的附加信息,生成用于转换从可变长度编码单元23提供的霍夫曼表中的码的转换表。即该霍夫曼表定义了要被霍夫曼编码的值(这里指图像的像素值)和具有不同码长的码(编码的数据)之间的关联,以及转换表生成单元24生成转换表,用于将霍夫曼表中的码转换为基于附加信息的码。转换表生成单元24所生成的转换表被提供给编码规则破坏单元25。
编码规则破坏单元25基于附加信息修改或破坏可变长度编码单元23中的编码规则,从而嵌入附加信息。即,编码规则破坏单元25依据转换表生成单元24基于附加信息所生成的转换表转换(处理)从可变长度编码单元23输出的编码的数据(码),从而依据可变长度编码单元23的被破坏的编码规则产生编码的数据。依据被破坏的编码规则所编码的编码的数据从编码规则破坏单元25向多路复用器26提供,作为通过将附加信息嵌入原始编码的数据中所获得的嵌入编码的数据。
多路复用器26将来自编码规则破坏单元25的嵌入编码的数据和来自可变长度编码单元23的有关霍夫曼表的信息多路复用,并输出该多路复用后的数据。如参考图1所述的,该多路复用后的数据通过记录介质3或传输介质4提供给解码装置2。
图3示出了图2中的可变长度编码单元23的结构的举例。
存储在图2中的帧存储器21中的图像数据的每一帧例如以时间顺序被顺序考虑,被考虑的帧的图像数据被读出。被考虑的帧的图像数据被提供给频率表生成单元31和编码单元34。
该频率表生成单元31对于向它提供的组成被考虑的帧的像素,生成频率表,表中每个像素值与其发生的频率相关,并将该频率表提供给霍夫曼树生成单元32。该频率表也从频率表生成单元31向图3中所示的多路复用器26提供作为有关霍夫曼表的信息。
尽管在图3的实施例中该频率表被用作有关霍夫曼表的信息,有关霍夫曼表的信息并不明确地限于能够获得下面将描述的霍夫曼表生成单元33所生成的霍夫曼表的信息。因此,该有关霍夫曼表的信息可以是例如霍夫曼表生成单元33所生成的霍夫曼表本身以及频率表。
霍夫曼树生成单元32基于频率表生成单元31所提供的频率表生成霍夫曼树,并将其提供给霍夫曼表生成单元33。该霍夫曼表生成单元33基于霍夫曼树生成单元32所提供的霍夫曼树生成霍夫曼表。即,霍夫曼表生成单元33生成霍夫曼表,在该表中,被考虑的帧中的像素值根据其发生频率每个被分配一个具有一定码长的码,像素值的发生频率越高,分配的码的码长越短,(像素值的发生频率越低,分配的码的码长越长)。该霍夫曼表被提供给编码单元34和图2中的转换表生成单元24。
编码单元34按顺序考虑向其提供的被考虑的帧中的每个像素,例如,以光栅扫描的顺序,并将被考虑的像素的像素值转换为霍夫曼表生成单元33所提供的霍夫曼表中相应的码,并将其输出作为编码的数据。
在如上所构成的可变长度编码单元23中,频率表生成单元31对于被考虑的帧生成频率表,并将其提供给霍夫曼树生成单元32。霍夫曼树生成单元32基于频率表生成单元31所提供的频率表生成霍夫曼树,并将其提供给霍夫曼表生成单元33。该霍夫曼表生成单元33基于霍夫曼树生成单元32所提供的霍夫曼树生成霍夫曼表,并将其提供给编码单元34。编码单元34将被考虑的帧中的每个像素值转换为霍夫曼表中像素值相应的码,并将其输出作为编码的数据。
现在将参考图4进一步描述可变长度编码单元23中的可变长度编码处理过程。
例如假定图4(A)中所示的频率表已经在频率表生成单元31中生成。图4(A)示出了像素值[0]、[1]、[2]、[3]以及[4]分别在被考虑的帧中发生了5次、4次、3次、2次以及1次。
关于图4(A)中的频率表,霍夫曼树生成单元32基于每个像素的发生频率,以从下至上的方式生成霍夫曼树,例如图4(B)至图4(E)所示的。
更具体地讲,霍夫曼树生成单元32从频率表中选择两个具有最低的发生频率的像素值,从而形成一个节点。另外,霍夫曼树生成单元32将比特“0”或“1”分配给所选择的两个像素值中具有最低的发生频率的像素值,例如将“0”分配给所选择的两个像素值中具有最低的发生频率的像素值,将“1”分配给另一个。霍夫曼树生成单元32将所选择的两个像素值的发生频率的和分配给所选择的两个像素值所形成的节点,作为该节点的发生频率。
因此,在图4(A)所示的频率表中,具有发生频率1的像素值[4]以及具有发生频率2的像素值[3]被选择形成节点#1,如图4(B)所示,3(1+2)被分配作为节点#1的发生频率。另外,对于选择的两个像素值[4]和[3],比特“0”被分配给具有较低的发生频率的像素值[4],比特“1”被分配给具有较高的发生频率的像素值[3]。
在图4(B)至图4(E)中,表示发生频率的数字示出在圆括号中。
如果所选择的两个像素值的发生频率相同,可以将比特“1”或“0”分配给任何一个像素值。然而,比特“1”或“0”分配给哪个像素必须预定义,例如将比特“0”分配给较小的像素值。
霍夫曼树生成单元32重复相同的处理过程直到实现会聚为单个节点。
因此,从图4(B)中所示的状态可知,每个具有发生频率3的节点#1和像素值[2]被选择,于是如图4(C)所示,节点#1和像素值[2]形成节点#2。另外,节点#2的发生频率被设置为6(3+3),以及比特“0”和“1”分别被分配给节点#1和像素值[2]。
从图4(C)中所示的状态可知,具有发生频率4的像素值[1]和具有发生频率5的像素值[0]被选择,于是像素值[1]和像素值[0]形成节点#3。另外,如图4(D)所示,节点#3的发生频率被设置为9(4+5),以及比特“0”和“1”分别被分配给像素值[1]和像素值[0]。
从图4(D)中所示的状态可知,具有发生频率6的节点#2和具有发生频率9的节点#3被选择,于是节点#2和节点#3形成节点#4。另外,如图4(E)所示,节点#4的发生频率被设置为15(6+9),以及比特“0”和“1”分别被分配给节点#2和节点#3。
图4(E)中所示的状态中可知,节点已经被会聚为单个节点#4,于是完成霍夫曼树。霍夫曼树生成单元32向霍夫曼表生成单元33提供该霍夫曼树。
霍夫曼表生成单元33通过从会聚节点向像素值方向跟踪该霍夫曼树,而识别分配给每个像素值的码。
更详细地讲,例如,图4(E)中所示的霍夫曼树被从节点#4向像素值[0]的方向跟踪,分配给节点(或像素值)的比特序列被发现为“0”→“0”→“0”。因此,霍夫曼表生成单元33识别分配给像素值[0]的码为“000″。同样,图4(E)中所示的霍夫曼树被从节点#4向像素值[1]的方向跟踪,分配给节点(或像素值)的比特序列被发现为“0”→“0”→“1”。因此,霍夫曼表生成单元33识别分配给像素值[1]的码为“001″。
相似地,霍夫曼表生成单元33识别分配给每个像素值的码,因此生成表示像素值和码之间的关联的霍夫曼表。因此,从图4(E)所示的霍夫曼树生成图4(F)所示的霍夫曼表。
可变长度编码单元23可以可替换地以美国专利第5021782号所公布的方式执行可变长度编码。
在图4(E)中所示的霍夫曼表中,码“11”、“10”、“01”、“001”以及“000”被分别分配给具有5、4、3、2以及1的发生频率的像素值[0]、[1]、[2]、[3]以及[4]。因此,基本上较短码长的码分配给较高的发生频率的像素值。
在图4(E)中所示的霍夫曼表中,尽管像素值[0]、[1]、[2]、[3]以及[4]具有不同的发生频率,两个比特的码被分配给具有较高发生频率的像素值[0]、[1]、[2],而三个比特的码被分配给具有相对较低的发生频率的像素值[3]和[4]。
如上所述,在霍夫曼表中,具有相同码长的码有时被分配给具有不同发生频率的像素值。像素值的发生频率和分配给像素值的码长之间的关系一般如图5所示。
参考图5,假定n比特的码被分配给x像素值(x是不超过2n的整数),分配给x像素值的n比特的码的模式数目是X!(!表示阶乘),基于上述生成霍夫曼树的规则,仅采用其中一个。
即使对于x像素值分配的n比特码的模式被修改,码的总量并不增加。即,在霍夫曼表中,即使n比特码取代另一个n比特码被分配给像素值,分配的码长仍然为n比特,因此码的总量并不增加。
另外,即使分配给x像素值的n比特码的模式被修改,码分配的模式例如基于x像素值的发生频率可以被恢复。
从以上可知,即使霍夫曼表中分配给像素值的相同长度的比特码的模式被修改,即,尽管可变长度编码的编码规则被破坏,码的总量并不增加,被修改的分配模式可以恢复为原始的模式。
这意味着,通过基于一些信息修改分配给像素值的码的模式,可以嵌入信息而不增加数据的总量,同时能够使嵌入的信息被解码而没有额外的开销。
图6示出了对于8比特(0至255)表示的像素值所产生的霍夫曼表的举例。图6中,除了像素值和分配给像素值的码,也示出了每个像素值的发生频率。
参考图6,例如,对于从[12]至[18]的7个像素值,9比特的码被分配给这7个像素值的每一个,因此对于这7个像素值存在9比特码的7!种分配模式。因此,通过修改对于这7个像素值所分配的9比特码的模式,可以嵌入int[log27!]比特的信息。Int[]表示不超过[]中的值的最大整数值。
图7(A)示出了图6中所示的像素值[12]至[18]的各个发生频率,以及图7(B)示出了分别分配给图6的像素值[12]至[18]的9比特码。
假定图7(B)中所示的码分配基于int[log27!]比特内的附加信息,如图7(C)中所示的被修改。
更具体地讲,在图7(B)中,码“110111111”、“110111010”、“110100001”、“110011001”、“11011000”、“011101011”以及“010001010”分别被分配给像素值[12]至[18]。在图7(C)中,分配被修改于是分配给像素值[12]的码“110111111,,现在被分配给像素值[15],分配给像素值[15]的码“110011001”现在被分配给像素值[12],分配给像素值[16]的码“11011000”现在被分配给像素值[17],分配给像素值[17]的码“011101011”现在被分配给像素值[18],分配给像素值[18]的码“010001010”现在被分配给像素值[16]。图7中对于其它像素值的分配码没有修改。
同样对于分配其它码长的码的像素值,可以基于附加信息修改码分配的模式。图8示出了基于附加信息,图6所示的码分配模式已经修改的组成编码的数据的其它编码的数据的举例。图8示出了嵌入编码的数据和通过依据图6中所示的霍夫曼表,可变长度解码该嵌入编码的数据所获得的解码的像素值(通过依据在获得编码的数据过程中所使用的霍夫曼表,解码嵌入编码的数据所获得的像素值)。
参考图8,例如对于从[12]至[18]的7个像素值,如果嵌入编码的数据依据图6所示的霍夫曼表被解码,获得图9所示的解码的像素值。即,将通过依据编码时所用的霍夫曼表解码嵌入编码的数据而获得的像素值指作嵌入解码的像素值,码“110011001”、“110111010”、“110100001”、“110111111”、“010001010”、“11011000”以及“011101011”分别被可变长度解码为嵌入解码的像素值[15]、[13]、[14]、[12]、[18]、[16]以及[17]。
图9(B)示出了嵌入解码的像素值[12]至[18]的发生频率的计数。由于图6的霍夫曼表中所示的分配给像素值[12]至[18]的码,被如图7(B)和图7(C)所示的修改了,所以像素值[12]、[15]以及[16]至[18]的发生频率与图7(A)中的不一致,更具体地讲,它们分别与可变长度编码之前的像素值[15]、[12]、[18]、[16]以及[17]一致。
然而,由于原始像素值[12]至[18]的发生频率(可变长度编码之前)和通过可变长度解码所获得的像素值[12]至[18]的发生频率应当彼此一致,如果可变长度编码之前和可变长度解码之后的发生频率有所不同的话,将是不正常的(奇怪的)。
因此,通过将图7(A)中所示的原始像素值的发生频率与图9(B)中所示的嵌入解码的像素值的发生频率进行比较,以及通过检测匹配的发生频率,可以将已经基于附加信息被修改的码(可变长度码)的分配模式,恢复为原始模式。即,嵌入编码的数据可以被恢复为依据霍夫曼表编码的编码的数据。另外,嵌入的附加信息可以基于当嵌入编码的数据被恢复为编码的数据时所修改的码的分配模式被解码,以及同样可以通过可变长度解码所恢复的编码的数据而获得原始的像素值。
更具体地讲,通过将图7(A)中所示的原始像素值的发生频率与图9(B)中所示的嵌入解码的像素值的发生频率进行比较,嵌入解码的像素值[15]、[13]、[14]、[12]、[17]、[18]以及[16]的发生频率可以被分别检测与原始像素值[12]之[18]的发生频率一致。
因此,从中可以获得嵌入解码的像素值[15]、[13]、[14]、[12]、[17]、[18]以及[16]的嵌入编码的数据“110011001”、“110111010”、“110100001”、“110111111”、“010001010”、“11011000”以及“011101011”可以被确定为在嵌入附加信息之前,图6中所示的霍夫曼表中分配给原始像素值[12]至[18]的码“110111111”、“110111010”、“110100001”、“110011001”、“11011000”、“011101011”以及“010001010”。
因此,通过转换嵌入编码的数据于是图7(A)中所示的原始像素值的发生频率与图9(B)中所示的嵌入解码的像素值的发生频率一致,如图9(C)所示,依据图6中所示的霍夫曼表编码的编码的数据可被恢复,以及可以基于嵌入编码的数据和恢复的编码的数据之间的关联,解码附加信息。另外,如图9(D)所示,通过可变长度解码恢复的编码的数据,可以获得原始的像素值。
图2中所示的嵌入压缩编码器11执行如上所述的不增加数据总量的嵌入编码处理并能够没有额外开销地进行解码。
现在将参考图10所示的流程图,进一步描述图2中所示的嵌入压缩编码器11所执行的嵌入编码处理过程。
在步骤S1中,可变长度编码单元23对来自帧存储器21的被考虑的帧内的每个像素的像素值进行可变长度编码,并向编码规则破坏单元25输出结果编码的数据。另外,在步骤S1中的可变长度编码中,可变长度编码单元23(图3)向多路复用器26输出频率表生成单元31所生成的频率表作为有关霍夫曼表的信息,并也向转换表生成单元24输出霍夫曼表生成单元33所生成的霍夫曼表。
然后,在步骤S2中,转换表生成单元24基于从附加信息存储器22所提供的附加信息,修改从可变长度编码单元23提供的霍夫曼表中的具有相同码长的码的分配模式,并执行转换表生成处理,用于生成关联修改前的码和修改后的码的转换表。该转换表从转换表生成单元24提供给编码规则破坏单元25。
在步骤S3中,编码规则破坏单元25执行编码的数据转换处理,用于依据从转换表生成单元24提供的转换表,将从可变长度编码单元23提供的编码的数据转换为嵌入编码的数据,并将所得的嵌入编码的数据提供给多路复用器26。
在步骤S4中,多路复用器26将从编码规则破坏单元25提供的被考虑的帧的嵌入编码的数据以及从可变长度编码单元23提供的有关霍夫曼表的信息多路复用并输出。该然后,处理进行至步骤S5。
在步骤S5中,确定是否在帧存储器21中存储有被考虑的帧的下一帧。如果在步骤S5中确定在帧存储器21中存储有被考虑的帧的下一帧,对于要被考虑的新一帧,处理返回到步骤S1,重复相同的处理过程。
如果在步骤S5中确定在帧存储器21中没有存储下一帧,则退出嵌入编码处理过程。
现在,将参考图11中的流程图,进一步描述被图2中的转换表生成单元24在图10中所示的步骤S2中执行的转换表生成处理。
在转换表生成处理过程中,开始在步骤S11中,转换表生成单元24考虑从可变长度编码单元23所提供的霍夫曼表中的码的特定码长,识别具有被考虑的码长的码的数目。即,转换表生成单元24识别具有与被考虑的码长的相同码长的码的数目。
在步骤S12中,转换表生成单元24基于在步骤S11中所识别的具有被考虑的码长的码的数目,计算可以嵌入在具有被考虑的码长的码中的附加信息的比特数。即,将具有被考虑的码长的码的数目表示为x,转换表生成单元24通过计算y=int[log2(x!)],可以获得可被嵌入的附加信息的比特数y。
然后,处理进行至步骤S13,转换表生成单元24从附加信息存储单元22读取步骤S12中所计算的y比特数的附加信息。然后,处理进行至步骤S14。在步骤S14中,转换表生成单元24基于在步骤S13中从附加信息存储器22读取的附加信息,生成对于具有被考虑的码长的码的转换表。即,转换表生成单元24基于y比特附加信息,修改分配给像素值的具有被考虑的码长的x码的分配模式,因此,生成对于具有被考虑的码长的码的转换表,该转换表中,修改前的码与修改后的码彼此相关。
然后,在步骤S15中,转换表生成单元24确定是否还有附加信息存储在附加信息存储器22中,如果确定没有信息,转换表生成单元24向编码规则破坏单元25(图2)输出至今所生成的转换表。然后,退出该转换表生成处理。
如果在步骤S15中确定还有附加信息存储在附加信息存储器22中,处理进行至步骤S16,转换表生成单元24确定是否已经对霍夫曼表中的每个码长的码生成转换表。如果确定生成还没有完成,处理返回步骤S11。在这种情况下,在步骤S11中,没有生成转换表的码长中的一个被选择作为要被考虑的新的码长,然后重复相同的处理。
如果在步骤S16中确定已经对霍夫曼表中的每个码长的码生成了转换表,则退出该转换表生成处理。
下面将参考图12进一步描述被图2所示的编码规则破坏单元25在图10的步骤S3中所执行的编码的数据转换处理。
如上所述,可变长度编码单元23按照光栅扫描的顺序考虑被考虑的帧内的每个像素,并可变长度编码被考虑的像素的像素值,顺序输出所得的编码的数据。将可变长度编码单元23对于被考虑的像素输出的编码的数据称为被考虑的编码的数据,开始,在步骤S21中,编码规则破坏单元25识别被考虑的编码的数据的码长。然后,处理进行至步骤S22。
在步骤S22中,编码规则破坏单元25依据与被考虑的编码的数据的码长相关的转换表,转换步骤S21中识别的被考虑的编码的数据,并向多路复用器26(图2)输出作为嵌入编码的数据。
然后,处理进行至步骤S23,编码规则破坏单元25选择下一个编码的数据作为要被考虑的新的编码的数据。然后,处理进行至步骤S21,重复相同的处理。
如果在步骤S23中确定下一个编码的数据不存在,则退出该编码的数据转换处理。
图2中所示的嵌入压缩编码器11通过依据转换表转换可变长度编码单元23中的可变长度编码所产生的编码的数据,产生嵌入附加信息的嵌入编码的数据。可替换地,例如,可变长度编码单元23也可以生成其中像素值和码的关联已经被修改的霍夫曼表(下文中当用到时被指作修改的霍夫曼表),并使用修改的霍夫曼表同时执行可变长度编码和嵌入附加信息。即,可变长度编码单元23可以基于破坏的编码规则执行可变长度编码。
图13示出了执行这样的嵌入编码处理的嵌入压缩编码器11的结构的举例。图中相应于图2和图3中所示的部分用相同的数字标记,以及它们的描述将在下文中省略。图13中所示的嵌入压缩编码器11不包括编码规则破坏单元25;相反,编码规则破坏单元41被包括在可变长度编码单元23中。除此之外,嵌入压缩编码器11的结构与图2中所示的相同。
对于编码规则破坏单元41,提供从霍夫曼表生成单元33输出的霍夫曼表以及从转换表生成单元24输出的转换表。
编码规则破坏单元41将与霍夫曼表中的像素值相关的码(编码的数据)修改为与转换表中的码相关的嵌入编码的数据,因此将从霍夫曼表生成单元33输出的霍夫曼表修改为其中像素值与嵌入编码的数据相关的修改的霍夫曼表。该修改的霍夫曼表被提供给编码单元34,编码单元34依据修改的霍夫曼表转换像素值。
因此,在图13中,编码单元34输出嵌入编码的数据。
图14示出了在嵌入压缩编码器11如图2或图13所示的情况下,图1中所示的解码器12的结构的举例。
多路分解器(DEMUX)51基于帧,将从图2或图13所示的嵌入压缩编码器11所提供的数据多路分解为嵌入编码的数据和有关霍夫曼表的信息,并向可变长度解码单元52和编码规则恢复单元55提供每帧的嵌入编码的数据,同时向可变长度解码单元52、逆转换表生成单元54以及可变长度解码单元56提供有关霍夫曼表的信息。
可变长度解码单元52顺序考虑来自多路分解器51的嵌入编码的数据和有关霍夫曼表的信息的每一帧,并基于组成有关被考虑的帧相关的霍夫曼表的信息的频率表,以如在图3所示的可变长度编码单元23中的相同的方式,生成霍夫曼表,并将其提供给逆转换表生成单元54。
从组成有关霍夫曼表的信息的频率表所生成的霍夫曼表和在可变长度编码单元23中用于可变长度编码的霍夫曼表是相同的,并在下文中被指作真霍夫曼表。用于获得真霍夫曼表的组成有关霍夫曼表的信息的频率表将在下文中被指作真频率表。
然后,可变长度解码单元52依据真霍夫曼表,可变长度解码被考虑的帧的嵌入编码的数据,并将所得的解码的像素值即嵌入解码的像素值提供给霍夫曼表生成单元53。
霍夫曼表生成单元53生成用于可变长度编码从可变长度解码单元52提供的被考虑的帧的嵌入解码的像素值的霍夫曼表,并向逆转换表生成单元54提供生成霍夫曼表的处理过程中所生成的霍夫曼表和频率表。
霍夫曼表生成单元53所生成的霍夫曼表被用于可变长度编码嵌入解码的像素值(通过依据真霍夫曼表可变长度解码嵌入编码的数据而获得的),基本上并不能正确地解码编码的数据。因此,从嵌入解码的像素值所获得的霍夫曼表将在下文中相对于真霍夫曼表被指作假霍夫曼表。用于获得假霍夫曼表的频率表在下文中相对于真频率表被指作假频率表。
逆转换表生成单元54基于从可变长度解码单元52所提供的真霍夫曼表和组成从多路分解器51提供的有关霍夫曼表的信息的真频率表以及从霍夫曼表生成单元53提供的假霍夫曼表和假频率表,生成用于将嵌入编码的数据转换为原始编码的数据的逆转换表。即,逆转换表生成单元54生成与图2(或图13)中所示的转换表生成单元24所生成的转换表相同的逆转换表。该逆转换表被提供给编码规则恢复单元55。
编码规则恢复单元55依据从逆转换表生成单元54提供的逆转换表,将从多路分解器51提供的嵌入编码的数据恢复(解码)为依据组成编码规则的真霍夫曼表所编码的编码的数据。另外,编码规则恢复单元55基于嵌入编码的数据和恢复的编码的数据之间的关联即逆转换表,解码嵌入在嵌入编码的数据中的附加信息。编码规则恢复单元55向可变长度解码单元56输出恢复的编码的数据并也输出作为解码的附加信息的已被解码的附加信息。
可变长度解码单元56从多路分解器51提供的有关霍夫曼表的信息生成真霍夫曼表,并基于真霍夫曼表可变长度解码从编码规则恢复单元55提供的编码的数据,并输出所得的解码的像素值。
图15示出了图14中所示的可变长度解码单元52的结构的举例。
从多路分解器51输出的嵌入编码的数据被提供给解码单元63,从多路分解器51输出的组成有关霍夫曼表的信息的频率表被提供给霍夫曼树生成单元61。
霍夫曼树生成单元61与图3所示的霍夫曼树生成单元32相似地,根据被考虑的帧有关的频率表生成霍夫曼树,并将其提供给霍夫曼表生成单元62。
霍夫曼表生成单元62与图3所示的霍夫曼表生成单元33相似地,基于从霍夫曼树生成单元61提供的霍夫曼树,生成霍夫曼表,并将其提供给解码单元63。
解码单元63依据从霍夫曼表生成单元62提供的霍夫曼表,将提供给它的嵌入编码的数据解码为像素值(嵌入解码的像素值),并输出结果。
图14中所示的可变长度解码单元56与图15中所示的可变长度解码单元52具有相同的结构。
图16示出了图14中所示的霍夫曼表生成单元53的结构的举例。
在霍夫曼表生成单元53中,从可变长度解码单元52输出的嵌入解码的像素值被提供给频率表生成单元71。频率表生成单元71、霍夫曼树生成单元72以及霍夫曼表生成单元73分别执行如图3中所示的频率表生成单元31、霍夫曼树生成单元32以及霍夫曼表生成单元33相同的处理。
因此,频率表生成单元71生成假频率表,即用于被考虑的帧的嵌入解码的像素值的频率表(而不是用于原始像素值的频率表),并将其提供给逆转换表生成单元54(图14)。霍夫曼表生成单元73生成假霍夫曼表,即用于要被考虑的帧的嵌入解码的像素值转换为具有与其发生频率一致的码长的码(不是用于原始的像素值的霍夫曼表),并将其提供给逆转换表生成单元54。
图17示出了图14中所示的逆转换表生成单元54的结构的举例。
如上所述,对于逆转换表生成单元54,提供真霍夫曼表、真频率表、假霍夫曼表、假频率表。基于这些表,逆转换表生成单元54依据真霍夫曼表识别嵌入编码的数据和编码的数据之间的关联,并生成定义关联的逆转换表,如参考图6至图9所述的。
向码关联单元82提供真霍夫曼表和假霍夫曼表,同时向比较单元81提供真频率表和假频率表。
比较单元81比较真频率表和假频率表以检测对于每个码长在真频率表和假频率表中相同发生频率的像素值。另外,比较单元81生成像素值关联表,在该表中,在真频率表和假频率表中有相同发生频率的像素值彼此相关,并将其提供给码关联单元82。
码关联单元82对于从比较单元81提供的像素值关联表中彼此相关的像素值,搜索真霍夫曼表和假霍夫曼表,并且分别使与像素值关联的各个码彼此相关联,从而生成逆转换表,该逆转换表被提供给编码规则恢复单元55.
现在将参考图18中的流程图描述图14中所示的解码器12所执行的解码处理过程。
多路分解器51将提供给它的数据多路多路分解为嵌入编码的数据和有关霍夫曼表的信息,将对于每帧的嵌入编码的数据提供给可变长度解码单元52和编码规则恢复单元55,同时将有关霍夫曼表的信息提供给可变长度解码单元52、逆转换表生成单元54以及可变长度解码单元56。
在步骤S31中,可变长度解码单元52顺序考虑从多路分解器51输出的嵌入编码的数据的每一帧和有关霍夫曼表的信息,并可变长度解码被考虑的帧的嵌入编码的数据。
更具体地讲,可变长度解码单元52根据组成有关被考虑的帧的霍夫曼表的信息生成霍夫曼表(真霍夫曼表),并将其提供给逆转换表生成单元54。另外,可变长度解码单元52依据真霍夫曼表,可变长度解码被考虑的帧的嵌入编码的数据,并将所得的嵌入解码的像素值提供给霍夫曼表生成单元53。
然后,处理进行至步骤S32,在步骤S32中,霍夫曼表生成单元53从可变长度解码单元52提供的被考虑的帧的嵌入解码的像素值生成频率表(假频率表),并从假频率表生成假霍夫曼表。该假频率表和假霍夫曼表被提供给逆转换表生成单元54。
在步骤S33中,逆转换表生成单元54基于真霍夫曼表、组成有关霍夫曼表的信息的真频率表、假霍夫曼表和假频率表,如上参考图17所述的生成逆转换表,并将其提供给编码规则恢复单元55。
在步骤S34中,编码规则恢复单元55通过参考从逆转换表生成单元54提供的逆转换表中的每个码长的嵌入编码的数据和编码的数据之间的关联,解码嵌入在嵌入编码的数据中的附加信息,并输出所得的解码的附加信息。
另外,在步骤S35中,编码规则恢复单元55通过参考逆转换表,将从多路分解器51提供的嵌入编码的数据转换为编码的数据并将其提供给可变长度解码单元56。
可变长度解码单元56从多路分解器51提供的有关霍夫曼表的信息生成真霍夫曼表,并基于真霍夫曼表可变长度解码从编码规则恢复单元55提供的编码的数据,并输出所得的解码的像素值。
然后,处理进行至步骤S37,在该步骤中,确定是否已经从多路分解器51输出新一帧的嵌入编码的数据和有关霍夫曼表的信息。如果确定它们已经随下一个要被考虑的帧被输出,处理返回步骤S31,重复相同的处理。
如果在步骤S37中确定没有从多路分解器51输出新一帧的嵌入编码的数据和有关霍夫曼表的信息,则退出解码程序。
如上所述,霍夫曼表本身可被用作有关霍夫曼表的信息而不是频率表。在那种情况下,组成有关霍夫曼表的信息的霍夫曼表必须被这样生成即,通过参考霍夫曼表,分配相同码长的码(编码的数据)的像素值的发生频率可被识别彼此是较高还是较低(依据能够这样的识别的规则)。
另外,尽管在上述举例中基于帧生成霍夫曼表,可替换地,也可基于字段或基于两个或多个帧生成霍夫曼表。
另外,可以例如使用预定图像数据预先生成霍夫曼表,于是嵌入压缩编码器11和解码器12依据预先生成的霍夫曼表执行处理。在这种情况下,然而,如果从要被处理的图像数据生成的霍夫曼表与从预定的图像数据生成的霍夫曼表不一致,则解码器12将不能将嵌入编码的数据恢复为编码的数据。因此,要被嵌入的附加信息必须被限于这样的图像数据,即从中可以获得与从预定的图像数据所生成的相同的霍夫曼表。
图19示出了图1中示出的嵌入压缩编码器11的结构的另一个举例。
要被编码的图像数据被提供给编码单元91。编码单元91依据预定的编码规则编码该图像数据,并向嵌入单元92输出所得的编码的数据。
附加信息被提供给嵌入单元92。嵌入单元92基于附加信息处理从编码单元91提供的编码的数据,以获得依据破坏的编码规则编码的编码的数据,从而将附加信息嵌入在编码的数据中。
现在将参考图20中的流程图描述图19中所示的嵌入压缩编码器11所执行的处理过程(嵌入编码处理)。
要被编码的图像数据例如基于帧被提供给编码单元91。编码单元91顺序考虑每一帧,并在步骤S41中,依据预定的编码规则编码被考虑的帧的图像数据。编码单元91然后向嵌入单元92输出所得的编码的数据。
在步骤S42中,嵌入单元92基于附加信息修改或破坏编码单元91中的编码规则,从而嵌入附加信息。即,嵌入单元92基于附加信息处理从编码单元91提供的编码的数据,以获得依据破坏的编码规则编码的编码的数据,从而将附加信息嵌入在编码的数据中。另外,该嵌入单元输出通过将附加信息嵌入在编码的数据中所获得的嵌入编码的数据。然后,处理进行至步骤S43。
在步骤S43中,编码单元91确定是否存在要被编码的下一帧。如果确定作为要被考虑的新一帧的下一帧存在,处理返回步骤S41,重复相同的处理。
如果在步骤S43中确定不存在要被编码的下一帧,则退出嵌入编码处理过程。
图21示出了图19中所示的编码单元91的结构的举例。
图21中所示的编码单元91中,例如,如果组成图像数据的像素值以RGB(红、绿和蓝)表示,每个像素值在RGB彩色空间被矢量量化,表示重心(centroid)矢量的码(下文中当用到时被指作VQ码)、相应于该码的重心矢量所表示的像素值相对于原始像素值的误差(下文中当用到时被指作VQ残余)、以及用于矢量量化的码本被输出作为编码的数据。
更具体地讲,要被编码的图像数据被提供给帧存储器101,帧存储器101例如基于帧顺序存储提供给它的图像数据。
码本生成单元102顺序考虑存储在帧存储器101中的图像数据的每一帧,并从组成被考虑的每一帧的每个像素的像素值,例如通过被称为LGB算法生成要被用于彩色空间内的矢量量化的码本。该码本被提供给矢量量化单元103并被输出作为编码的数据(部分)。
矢量量化单元103从帧存储器101读取被考虑的帧,并顺序考虑组成被考虑的帧的每个像素,例如以光栅扫描的顺序。矢量量化单元103使用从码本生成单元102提供的码本,矢量量化被考虑的像素的像素值,并输出所得的VQ码和VQ残余作为编码的数据(部分)。
如图22中所示,在如上所构建的编码单元91中,码本生成单元102从组成被考虑的帧的每个像素的像素值,生成码本,并将其提供给矢量量化单元103。矢量量化单元103使用从码本生成单元102提供的码本,矢量量化被考虑的像素的像素值。
即,矢量量化单元103从码本检测表示与被考虑的像素的像素值所表示的RGB空间上的点距离最短的点的重心矢量,并输出表示该重心矢量的VQ码。另外,矢量量化单元103计算VQ码所表示的重心矢量和相应于被考虑的像素的像素值所表示的RGB空间上的点的矢量之间的差异,并输出该结果差异作为VQ残余。
然后,编码单元91输出这样获得的对于被考虑的帧中的每个像素的码本,VQ码以及VQ残余作为与被考虑的帧有关的编码的数据。
图23示出了在编码单元91如图21所示构建的情况下,图19中所示的嵌入单元92的结构的举例。
从编码单元91输出的被考虑的帧的VQ码、VQ残余以及码本分别被提供并存储在VQ码存储器111、VQ残余存储器112以及码本存储器113中。
分别存储在VQ码存储器111以及码本存储器113中的VQ码和码本被从中读取并提供给压缩单元115。
行循环单元114顺序考虑被考虑的帧内的每一行,例如从上至下,并读取存储在VQ残余存储器112中的被考虑的行的VQ残余。另外,将组成被考虑的行的像素的数目表示为x,行循环单元114接收int[log2x]表示的比特数的附加信息,以及如图24所示,要被考虑的行的VQ残余向右循环相应于附加信息的比特数,从而将附加信息嵌入在被考虑的行中。即,对于被考虑的行上的像素,行循环主要改变了通过矢量量化所获得的像素的VQ残余,即用于矢量量化的编码规则被改变或破坏了。通过破坏该编码规则,嵌入附加信息。
然后,行循环单元114向压缩单元115提供嵌入附加信息的被考虑的行的VQ残余。
压缩单元115基于空间关联或熵的偏置将提供给它的VQ码、VQ残余以及码本压缩,并向多路复用器116输出压缩的结果。多路复用器116将压缩的VQ码、VQ残余以及码本多路复用在一起用于输出。
现在将参考图25的流程图,描述在编码单元91如图21所示地构建以及嵌入单元92如图23所示地构建的情况下,被图19中所示的嵌入压缩编码器11所执行的处理过程(嵌入编码程序)。
在编码单元91中(图21)考虑存储在帧存储器101中的预定的帧,在步骤S51中,被考虑的帧中的每个像素如上所述被矢量量化编码。通过矢量量化被考虑的帧所获得的组成编码的数据的VQ码、VQ残余以及码本被提供给嵌入单元92。
在嵌入单元92中(图23),从编码单元91输出的与被考虑的帧有关的VQ码、VQ残余以及码本分别被提供并存储在VQ码存储器111、VQ残余存储器112以及码本存储器113中。在步骤S52中,行循环单元114确定是否在VQ残余存储器112中存储其VQ残余的所有的被考虑的帧的行已经被处理。
如果在步骤S52中确定在VQ残余存储器112中存储其VQ残余的所有的被考虑的帧的行没有全部被处理,则行循环单元114选择没有被处理的被考虑的帧最上面一行作为要被考虑的新的行。然后,处理进行至步骤S53.
在步骤S53中,行循环单元114要被考虑的行中的每个具有VQ残余作为其像素值的像素向右循环相应于附加信息的像素数,从而将附加信息嵌入在被考虑的行中,并向压缩单元115提供该结果。然后,处理返回至步骤S52,重复相同的处理。
如果在步骤S52中确定在VQ残余存储器112中存储其VQ残余的所有的被考虑的帧的行已经全部被处理,则处理进行至步骤S54,在步骤S54中,压缩单元115读取存储在VQ码存储器111中的被考虑帧的VQ码,也读取存储在码本存储器113中的码本。在步骤S54中,压缩单元115压缩VQ码和码本以及从行循环单元提供的嵌入附加信息的VQ残余,并将结果提供给多路复用器116。
在步骤S55中,多路复用器116将压缩单元115提供的压缩的VQ码、VQ残余以及码本多路复用在一起用于输出。然后,处理进行至步骤S56。
在步骤S56中,确定是否在编码单元91中存在要被编码的下一帧。如果确定下一帧存在,用要被编码的下一帧作为要被考虑的新一帧,处理返回步骤S51,重复相同的处理。
如果在步骤S56中确定不存在要被编码的下一帧,则退出嵌入编码处理。
图26示出了在嵌入压缩编码器11如图19所示构建时,图1的解码器12的结构的举例。
从图19所示的嵌入单元92输出的嵌入编码的数据被提供给编码规则恢复单元121。
该编码规则恢复单元121将嵌入编码的数据恢复(解码)为依据图19所示的编码单元91中的编码规则编码的编码的数据,从而解码嵌入在嵌入编码的数据中的附加信息。
即,该编码规则恢复单元121基于从参数控制器124提供的参数,处理嵌入编码的数据,从而获得编码的数据的候选(下文中当用到时被指作暂定的编码的数据)。另外,该编码规则恢复单元121基于用于将嵌入编码的数据恢复为暂定的编码的数据的操作,获得嵌入在嵌入编码的数据中的附加信息的候选(下文中被指作暂定的解码的附加信息)。该暂定的编码的数据被提供给解码单元122和确定单元123,同时暂定的解码的附加信息被提供给确定单元123。
解码单元122基于图19所示的编码单元91中的编码规则对从编码规则恢复单元121提供的暂定的编码的数据执行解码,从而获得原始像素值的候选(在下文中当用到时被指作暂定的解码的像素值)。该暂定的解码的像素值被提供给确定单元123。
确定单元123控制参数控制器以向编码规则恢复单元121提供一个或多个参数值,并从分别根据一个或多个参数值所获得的暂定的解码的像素值确定一个正确的暂定的解码的像素值(与原始的像素值一致)。另外,确定单元123从一个或多个从编码规则恢复单元121提供的、分别与一个或多个暂定的解码的像素值有关的暂定的解码的附加信息中,选择与正确的解码的像素值有关的暂定的解码的附加信息作为正确的解码的附加信息,并分别输出正确的解码的像素值和暂定的解码的附加信息作为像素值和附加信息的解码的最终结果(解码的像素值和解码的附加信息)。
参数控制器124在确定单元123的控制下,向编码规则恢复单元121提供用于处理嵌入编码的数据的参数。
现在将参考图27中的流程图,描述图26中所示的解码器12所执行的处理过程。
开始,在步骤S61中,确定单元123控制参数控制器124以设置提供给编码规则恢复单元121的参数。因此,参数控制器124在确定单元123的控制下,向编码规则恢复单元121提供参数。
在步骤S62中,编码规则恢复单元121基于从参数控制器124提供的参数,处理嵌入编码的数据,将其转换为暂定的编码的数据,并向解码单元122和确定单元123提供该暂定的编码的数据。另外,编码规则恢复单元121基于用于将嵌入编码的数据恢复为暂定的编码的数据的操作,即从参数控制器124提供的参数,解码嵌入在嵌入编码的数据中的附加信息,并将结果提供给确定单元123作为暂定的解码的附加信息。
在步骤S63中,解码单元122基于图19所示的编码单元91中的编码规则解码从编码规则恢复单元121提供的暂定的编码的数据,并向确定单元123提供所得的像素值作为暂定的解码的像素值。
在步骤S64中,确定单元123确定从解码单元122提供的暂定的解码的像素值是否是正确的解码结果(与原始的像素值一致)。如果确定不一致,处理返回至步骤S61。在这种情况下,在步骤S61中,确定单元123设置一个新的值作为从参数控制器124输出的参数,并重复相同的处理。
如果在步骤S64中确定暂定的解码的像素值是一个正确的解码结果,则处理进行至步骤S65,在步骤S65中,确定单元123输出该暂定的解码的像素值作为组成原始的像素值的解码所得的解码的像素值。另外,确定单元123输出与解码的像素值有关的暂定的解码的附加信息,作为组成嵌入的附加信息的解码所得的解码的附加信息。然后,处理进行至步骤S66。
在步骤S66中,确定是否还有要被解码的嵌入编码的数据。如果确定有,处理返回步骤S61,对于要被解码的嵌入编码的数据重复相同的处理。
如果在步骤S66中确定不存在要被解码的嵌入编码的数据,则退出解码处理。
图28示出了在图19所示的嵌入单元92被如图23所示的构建时,图26中所示的编码规则恢复单元121的结构的举例。
从图23所示的多路复用器116输出的数据被提供给多路分解器131。该多路分解器131将提供给它的数据多路多路分解为压缩的VQ码、VQ残余、以及码本,并将它们提供给扩展单元132。该扩展单元132扩展从多路分解器131提供的压缩的VQ码、VQ残余、以及码本,并分别将扩展的VQ码、VQ残余、以及码本提供给VQ码存储器133、VQ残余存储器134以及码本存储器135。
VQ码存储器133、VQ残余存储器134以及码本存储器135基于帧分别存储来自扩展单元132的VQ码、VQ残余、以及码本。
行循环单元136顺序考虑存储在VQ残余存储器134中的帧的每一行,例如从上至下,并读取存储在VQ残余存储器134中被考虑的行的VQ残余。另外,将组成被考虑的行的像素数表示为x,行循环单元136接收一个范围从0至x的整数,作为来自参数控制器124(图26)的参数,并要被考虑的行的VQ残余向左循环相应于参数的像素数。行循环单元136在循环后输出每一行的VQ残余,与存储在VQ存储器133和存储在码本存储器135中的码本一起,作为暂定的编码的数据。
另外,行循环单元136将从参数控制器124提供的参数值输出作为暂定的解码的附加信息。
图29示出了当图19所示的编码单元91如图21构建时,图26所示的解码单元122的结构的举例。
解码单元122通过基于组成从编码规则恢复单元121提供的编码的数据的帧的VQ码、VQ残余、以及码本的矢量量化,解码的像素值。
即,向逆矢量量化单元141提供VQ码和码本。逆矢量量化单元141从码本检测相应于VQ码的重心矢量,并向加法单元142提供该重心矢量。除了从逆矢量量化单元141提供的重心矢量,组成VQ残余的差异矢量也提供给加法单元142。加法单元142将重心矢量和差异矢量相加。加法单元142输出通过加法所获得的具有如R、G和B值的矢量成分的像素值作为暂定的解码的像素值。
图30示出了当编码规则恢复单元121和解码单元122分别如图28和图29构建时,图26所示的确定单元123的结构的举例。
从编码规则恢复单元121输出的暂定的解码的附加信息和从解码单元122输出的暂定的解码的像素值被提供给存储器151。存储器151临时存储暂定的解码的附加信息和暂定的解码的像素值,并在真/假确定单元154的控制下读取暂定的解码的附加信息和暂定的解码的像素值,并分别将它们输出作为解码的附加信息和解码的像素值。
包括在从编码规则恢复单元121输出的暂定的编码的数据中的码本以及从解码单元122输出的暂定的解码的像素值被提供给编码单元152。编码单元152与图19所示的编码单元91相似地编码暂定的解码的像素值。即,编码单元152使用从编码规则恢复单元121提供的码本,矢量量化暂定的解码的像素值,并向比较单元153提供所得的VQ码和VQ残余。通过矢量量化暂定的解码的像素值所获得的VQ码和VQ残余在下文中当用到时要被分别指作暂定的VQ码和暂定的VQ残余。
除了从编码单元152输出的暂定的VQ码和暂定的VQ残余之外,还向比较单元153提供包括在从编码规则恢复单元121输出的暂定的编码的数据中的VQ码和VQ残余。比较单元153将暂定的VQ码和暂定的编码的数据中的VQ码进行比较,并也将暂定的VQ残余和暂定的编码的数据中的VQ残余进行比较,并将比较的结果提供给真/假确定单元154。
真/假确定单元154控制参数控制器124以向编码规则恢复单元121提供用于行循环的比特数作为参数。另外,真/假确定单元154基于从比较单元153提供的暂定的VQ码和暂定的编码的数据中的VQ码的比较结果,以及暂定的VQ残余和暂定的编码的数据中的VQ残余的比较结果,确定暂定的解码的像素值是否是一个正确的解码值,并基于确定的结果控制从存储器151的暂定的解码的像素值和暂定的解码的附加信息的读取。
现在将参考图31描述图30所示的真/假确定单元154的如是否暂定的解码的像素值是一个正确的解码所得的确定原理。
由于编码单元91(图19)执行RGB空间的矢量量化,用于矢量量化的重心矢量由三个成分组成,命名为R、B和G成分。将由R、B和G成分组成的重心矢量表示为(R,G,B),并假定码本中的重心矢量的每个R、B和G成分为简化描述被表示为10的倍数,例如,分别带有102、103和99的R、G和B成分的像素值(下文中当用到时被表示为像素值(102,103,99))具有对于重心矢量(100,100,100)的最短的距离,因此被矢量量化为与重心矢量(100,100,100)相关的VQ码。例如,让与重心矢量(100,100,100)相关的VQ码为0。
在这种情况下,从像素值(102,103,99)减去重心矢量(100,100,100)产生VQ残余(2,3,-1)。因此,像素值(102,103,99)被编码为VQ码0和VQ残余(2,3,-1)。
通过逆矢量量化组成编码单元91所获得的编码的数据的VQ码0和VQ残余(2,3,-1),如图31(A)所示,与VQ码0有关的重心矢量(100,100,100)和VQ残余(2,3,-1)被相加以产生像素值(102,103,99),并从而正确地解码以获得原始的像素值。
另外,通过再次矢量量化解码的像素值(102,103,99),如图31(A)所示,再次获得VQ码0和VQ残余(2,3,-1)。
如上所述,通过解码组成编码的数据的VQ码和VQ残余以获得正确的解码结果,以及再编码(这里是矢量量化)和解码该结果,编码获得的VQ码和VQ残余分别与组成编码的数据的VQ码和VQ残余一致。
组成编码单元91中所获得的编码的数据的VQ码0和VQ残余(2,3,-1),当通过对VQ残余(2,3,-1)以上述描述的方式应用行循环而嵌入附加信息时,对于不同像素所获得的VQ残余值被分配作为VQ码0和与VQ残余(2,3,-1)有关的像素之间的VQ残余。如果例如不同像素的VQ残余值如图31(B)所示为(10,11,12),通过将重心矢量(100,100,100)与VQ残余(10,11,12)相加,VQ码0和VQ残余(10,11,12)被解码为像素值(110,111,112),没有正确地解码为原始像素值(102,103,99)。
因此,尽管非正确解码的像素值(110,111,112)被再次矢量量化,如图31(B)所示,结果VQ码和VQ残余分别与组成编码的数据的VQ码和VQ残余不一致。
更具体地讲,在这种情况下,由于假定码本中的重心矢量的每个R、B和G成分被表示为10的倍数,对于像素值(110,111,112)具有最短的距离的重心矢量是(110,110,110)。因此,例如假定表示重心矢量是(110,110,110)的VQ码是1,像素值(110,111,112)被矢量量化为VQ码1和VQ残余(0,1,2)(=(110,111,112)-(110,110,110))。在这种情况下,VQ码和VQ残余均与组成原始编码的数据的VQ码和VQ残余(10,11,12)不一致。
如上所述,如果依据图28所示的行循环单元136中的参数而用于循环的像素数与附加信息不一致,即,如果暂定的编码的数据与嵌入附加信息之前的编码的数据不一致,通过再编码从暂定的编码的数据获得的暂定的解码的像素值而获得的VQ码和VQ残余分别与组成暂定的编码的数据的VQ码和VQ残余不一致,因此通过解码暂定的编码的数据而获得的暂定的解码的像素值可以被确定为非正确解码的结果。
另一方面,如果依据图28所示的行循环单元136中的参数而用于循环的像素数与附加信息相一致,即,如果暂定的编码的数据与嵌入附加信息之前的编码的数据相一致,通过再编码从暂定的编码的数据获得的暂定的解码的像素值而获得的VQ码和VQ残余分别与组成暂定的编码的数据的VQ码和VQ残余相一致,因此通过解码暂定的编码的数据而获得的暂定的解码的像素值可以被确定为正确解码的结果。
现在将参考图32描述在编码规则恢复单元121、解码单元122以及确定单元123分别如图28至图30所示构建的情况下,图26中所示的解码器12所执行的解码处理。
在解码处理中,解码恢复单元规则121的多路分解器131多路分解提供给它的数据为压缩的VQ码、VQ残余以及码本,并将它们提供给扩展单元132。在步骤S71中,该扩展单元132扩展从多路分解器131提供的压缩的VQ码、VQ残余、以及码本,并分别将扩展的VQ码、VQ残余、以及码本提供给VQ码存储器133、VQ残余存储器134以及码本存储器135。
然后,在步骤S72中,确定单元123(图30)的真/假确定单元154控制参数控制器124(图26)以设置一个特定的参数值,并将此参数值提供给编码规则恢复单元121。
每次在步骤S72中执行对于每一帧的每一行的处理时,真/假确定单元154例如顺序设置范围为0至一行中的像素数的整数作为参数值。
当编码规则恢复单元121收到来自参数控制器124的参数时,在步骤S73中,行循环单元136要被考虑的行的VQ残余向左循环相应于参数的像素数。并将左循环的VQ残余,与存储在VQ存储器133中的被考虑的行的VQ码以及存储在码本存储器135中的码本一起,作为暂定的编码的数据提供给解码单元122。另外,行循环单元136向确定单元123提供用于被考虑的行的循环的像素数作为暂定的解码的附加信息。
在步骤S74中,解码单元122基于组成编码规则恢复单元121所提供的暂定的编码的数据的VQ码、VQ残余、以及码本,执行逆矢量量化,因此解码被考虑的行的像素值,并向确定单元123提供所得的暂定的解码的像素值。
在确定单元123(图30)中,从编码规则恢复单元121输出的暂定的解码的附加信息以及从编码规则恢复单元121输出的暂定的解码的像素值被存储于存储器151中。另外,在步骤S75中,在确定单元123中,编码单元152矢量量化从解码单元122提供的暂定的解码的像素值,并向比较单元153提供所得的暂定VQ码和暂定VQ残余。
比较单元153对于被考虑的行的每个像素,将从编码单元152提供的暂定的VQ码和组成暂定的编码的数据的VQ码进行比较,并也将从编码单元152提供的暂定的VQ残余和组成暂定的编码的数据的VQ残余进行比较,并将比较的结果提供给真/假确定单元154。在步骤S76中,真/假确定单元154对于被考虑的行的每个像素,确定暂定的VQ码是否与组成暂定的编码的数据的VQ码一致,以及暂定的VQ残余是否与组成暂定的编码的数据的VQ残余一致。如果确定其中一个或两者均对于一个或多个像素不一致,即,如果在前一步S72设置的参数值与附加信息不一致,处理返还至步骤S72,设置一个新的参数,重复相同的处理。
如果在步骤S76中确定对于被考虑的行的每个像素,暂定的VQ码与组成暂定的编码的数据的VQ码一致,以及暂定的VQ残余与组成暂定的编码的数据的VQ残余一致,即。如果在前一步S72设置的参数值与附加信息一致,以及如果编码的数据已被恢复,原始附加信息已被正确解码作为暂定的解码的附加信息,处理进行至步骤S77,在步骤S77中,确定单元154控制存储器51分别输出其存储的对于被考虑的行的每个像素的暂定的解码的像素值和暂定的解码的附加信息,作为正确解码的像素值和正确解码的附加信息。然后,处理进行至步骤S78。
在步骤S78中,确定是否存在下一个要被解码的行。如果确定存在下一行,处理返回步骤S72,用要被处理的下一行作为要被考虑的新一行重复相同的处理。
如果在步骤S78中确定不存在要被解码的下一行,则退出解码处理。
图32所示的解码处理对于每一帧执行。
如上所述,用于获得编码的数据的编码规则基于附加信息被破坏(修改),以及依据破坏的编码规则编码的嵌入编码的数据被以一种预定的方式处理,从而获得暂定的编码的数据。该暂定的编码的数据被解码,确定是否编码解码的结果产生与暂定的编码的数据相同的数据,于是在编码规则破坏之前的编码的数据被恢复(解码)。因此,通过利用编码规则的破坏和恢复,可以嵌入并解码的附加信息而不增加编码的数据的总量。
本申请已经在美国提出,专利申请号为第09/636138号,一种基于例如图像的相关性,用于在图像中嵌入附加信息的方法。依据提出的方法,例如组成帧的行基于附加信息被交换,基于这样的事实即原始帧中的相邻的行之间彼此高度相关,已经基于附加信息被交换的帧的行被恢复至其原始的位置。根据情况,基于相关性的方法在嵌入附加信息的过程中并不总是成功的。即,简单地,关于嵌入附加信息的帧的行,基于相关性的方法将行的相邻的行与被考虑的行高度相关的行交换,直到所有的行被恢复为原始位置。然而,在一些图像中,与被考虑的行最相关的行并不一定是被考虑的行的相邻行。当通过嵌入附加信息而交换这样的行时,行不能基于相关性被恢复至其原始位置,抑制了附加信息被嵌入。
为此,上述方法并不能解决这样的解码失败。
在图26所示的实施例中,解码器12仅包括编码规则恢复单元121和解码单元122对的单个行,通过顺序改变从参数控制器124输出的参数而顺序获得与各个参数值有关的暂定的编码的数据;然而,例如如图33所示,解码器12可以包括编码规则恢复单元1211至121M和解码单元1221至122M的M行,分别对每个编码规则恢复单元121m(m=1,2,...,M)提供不同的参数值,于是可以同时获得分别与参数值有关的暂定的编码的数据。
另外,尽管在上述举例中图19所示的编码单元91执行矢量量化,编码单元91可以执行例如预测编码而不是矢量量化。在这种情况下,嵌入单元92被能够通过处理与基于附加信息的预测编码相关的预测残余而嵌入编码的数据。
另外,尽管在上述举例中,通过基于附加信息循环每行的VQ残余而嵌入附加信息,附加信息也可以通过例如循环表示VQ残余的值的比特序列而被嵌入。
另外,尽管在上述举例中,码本被生成并包括在基于帧的编码的数据中,码本可以预先生成并存储在每个嵌入压缩编码器11和解码器12中。另外,码本可以基于多个帧,或基于帧的预定字段生成。
上述处理过程可以以硬件或软件方式实现。当处理过程以软件方式实现时,在例如通用计算机中安装组成软件的程序。
图34示出了安装用于执行上述处理过程的程序的计算机结构的举例。
程序可被预先存储在计算机内的记录介质中,如硬盘205或ROM 203。
可替换地,程序可以被临时或永久地存储(记录)在如软盘、CD-ROM(光盘只读存储器)、MO(磁光)盘、DVD(数字多用光盘)、磁盘、或半导体存储器的可拆卸存储介质211中。
如果没有如上所述将程序安装在计算机的可拆卸存储介质211中,该程序可以通过用于数字卫星广播的人造卫星从下载站通过无线方式传送至计算机,或通过LAN(局域网)或因特网通过有线链接传送至计算机,以使计算机接收通过通信单元208这样传送的程序,并然后将此程序安装在内部硬盘205中。
计算机包括CPU(中央处理单元)202。输入/输出接口210通过总线201连接到CPU 202。通过输入/输出接口210响应用户在输入单元207上的操作的命令输入包括键盘、鼠标、麦克风等,CPU 202依据命令,执行存储在ROM(只读存储器)203中的程序。可替换地,CPU 202将存储在硬盘205中的程序、通过卫星或网络传送通过通信单元208接收并存储在硬盘205中的程序、或从安装在驱动209中的可拆卸记录介质211读取并安装在硬盘205中的程序装载到RAM(随机访问存储器)204中用于执行。CPU 202依据上述流程图执行这样的处理,或被上述方框图所示的结构执行处理。CPU 202如要求地,通过如输入/输出接口210,向包括LCD(液晶显示器)、扬声器等的输出单元206输出处理的结果,通过通信单元208将其发送,将其记录在硬盘205上等等。
在本说明书中,计算机上用于执行各种处理的组成程序的处理步骤不一定以流程图所示的顺序被顺序执行,可以以并行或单独执行(如并行处理或基于对象处理)。
该程序可以通过单个计算机或使用多个计算机的分布式处理执行。另外,该程序可以被传送或在远程计算机上执行,
尽管在实施例中图像数据被编码,要被编码的数据并不限于图像数据,可以使用如音频数据和计算机程序的各种数据。
工业应用性
依据本发明的第一数据处理装置、第一数据处理方法以及第一存储介质,第一数据被编码以输出编码的数据。然后,基于第二数据修改编码的数据的一部分,以便将第二数据嵌入编码的数据中。
依据本发明的第二数据处理装置、第二数据处理方法以及第二存储介质,生成用于编码第一数据的编码表,以及,基于第二数据修改编码表生成部件所生成的编码表以生成修改的编码表。然后,基于修改的编码表编码第一数据以生成嵌入第二数据的嵌入编码的数据。
依据本发明的第五数据处理装置、第五数据处理方法以及第五存储介质,依据编码规则编码第一数据以输出编码的数据。然后,基于第二数据修改编码规则,以及,依据被修改了的编码规则编码第一数据以生成嵌入第二数据的嵌入编码的数据。
因此,可以嵌入第二数据而不增加数据总量。
依据本发明的第三数据处理装置、第三数据处理方法以及第三存储介质,基于编码表暂定地解码通过将第二数据嵌入第一数据中所编码的嵌入编码的数据,以输出暂定的解码的数据。另外,基于暂定的解码的数据生成暂定的编码表,以及基于编码表和暂定的编码表解码嵌入编码的数据以获得第一解码的数据。比较编码表和暂定的编码表以获得第二解码的数据。
依据本发明的第四数据处理装置、第四数据处理方法以及第四存储介质,依据输入参数修改通过嵌入第二数据在第一数据中所编码的嵌入编码的数据的一部分,以及,基于编码表将其暂定的解码以生成暂定的解码的数据。另外,将暂定的解码的数据再编码以输出再编码的数据。通过比较嵌入编码的数据和再编码的数据来确定参数,输出基于编码表暂定解码已经基于该参数被部分修改过的嵌入编码的数据所获得的暂定的解码的数据,作为第一解码的数据,并且获得相应于该参数的第二解码的数据。
依据本发明的第六数据处理装置、数据处理方法以及存储介质,解码通过将第二数据嵌入在第一数据中所获得的嵌入编码的数据,以获得依据熵编码规则编码的编码的数据并获得第二数据。另外,解码该编码的数据以获得第一数据。
因此,可以正确地解码第一和第二数据。
依据本发明的数据处理系统,在编码装置中,依据编码规则编码第一数据以输出编码的数据。然后,基于第二数据修改编码规则,以及依据被修改了的编码规则编码第一数据以生成嵌入第二数据的嵌入编码的数据。在解码装置中,解码嵌入编码的数据以获得依据编码规则编码的编码的数据并获得第二数据。然后,解码该编码的数据以获得第一数据。因此,可以嵌入第二数据而不增加通过编码第一数据而获得的编码的数据的总量。另外,嵌入第二数据的数据可以被正确地解码以获得第一和第二数据。

Claims (3)

1.一种数据处理装置,包括:
第一解码部件,用于解码通过将第二数据嵌入到通过压缩编码第一数据所获得的压缩数据中而获得的嵌入压缩的数据,以获得依据熵编码规则压缩编码的压缩的数据并获得第二数据;以及
第二解码部件,用于解码该压缩的数据以获得第一数据,
其中,所述第一解码部件解码嵌入压缩的数据,以获得依据所述熵编码规则可变长度压缩编码的压缩的数据,其中在所述熵编码规则中,基于第一数据中每个数据值的发生频率来分配一定长度的压缩数据,
其中,所述第一解码部件基于第一数据中每个数据值的发生频率和通过可变长度解码嵌入压缩的数据而获得的解码的数据中每个数据值的发生频率,修改与第一数据中的被分配相同的长度的压缩的数据的每个数据值相关的编码的数据,从而将嵌入压缩的数据恢复为依据熵编码规则可变长度压缩编码的压缩的数据。
2.如权利要求1所述的数据处理装置,
其中,所述第一解码部件包括转换表生成部件,用于基于第一数据中每个数据值的发生频率和通过可变长度解码嵌入压缩的数据而获得的解码的数据中每个数据值的发生频率,生成用于转换编码表中的压缩数据的转换表,所述编码表用于可变长度压缩编码第一数据为压缩的数据。
3.如权利要求1所述的数据处理装置,
其中所述第一数据为图像数据。
CN2008100955695A 2000-10-19 2001-10-12 数据处理装置 Expired - Fee Related CN101355699B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP319418/00 2000-10-19
JP2000319418A JP4214440B2 (ja) 2000-10-19 2000-10-19 データ処理装置およびデータ処理方法、並びに記録媒体

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CNB018042597A Division CN100490531C (zh) 2000-10-19 2001-10-12 数据处理装置

Publications (2)

Publication Number Publication Date
CN101355699A CN101355699A (zh) 2009-01-28
CN101355699B true CN101355699B (zh) 2011-09-28

Family

ID=18797881

Family Applications (4)

Application Number Title Priority Date Filing Date
CNB018042597A Expired - Fee Related CN100490531C (zh) 2000-10-19 2001-10-12 数据处理装置
CNB2005101204844A Expired - Fee Related CN100541536C (zh) 2000-10-19 2001-10-12 数据处理装置
CN2007101693888A Expired - Fee Related CN101188759B (zh) 2000-10-19 2001-10-12 数据处理装置
CN2008100955695A Expired - Fee Related CN101355699B (zh) 2000-10-19 2001-10-12 数据处理装置

Family Applications Before (3)

Application Number Title Priority Date Filing Date
CNB018042597A Expired - Fee Related CN100490531C (zh) 2000-10-19 2001-10-12 数据处理装置
CNB2005101204844A Expired - Fee Related CN100541536C (zh) 2000-10-19 2001-10-12 数据处理装置
CN2007101693888A Expired - Fee Related CN101188759B (zh) 2000-10-19 2001-10-12 数据处理装置

Country Status (6)

Country Link
US (1) US6859155B2 (zh)
EP (1) EP1331820A4 (zh)
JP (1) JP4214440B2 (zh)
KR (1) KR100821022B1 (zh)
CN (4) CN100490531C (zh)
WO (1) WO2002035848A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10230812B4 (de) * 2002-07-08 2004-11-25 T-Mobile Deutschland Gmbh Verfahren zur Übertragung von zusätzlichen Informationen bei Verwendung eines Verfahrens zur Komprimierung von Daten mittels einer priorisierenden Pixelübertragung
DE10231286B4 (de) * 2002-07-10 2004-05-19 T-Mobile Deutschland Gmbh Verfahren zur Übertragung von zusätzlichen Daten innerhalb einer Videodatenübertragung
US7212676B2 (en) * 2002-12-30 2007-05-01 Intel Corporation Match MSB digital image compression
JP4127537B2 (ja) * 2004-02-04 2008-07-30 富士フイルム株式会社 画像処理方法および装置並びにプログラム
JP2006108997A (ja) 2004-10-04 2006-04-20 Canon Inc 情報処理装置、情報処理方法、プログラム及び記憶媒体
KR101141897B1 (ko) * 2004-10-25 2012-05-03 성균관대학교산학협력단 데이터 은닉을 위한 부호화/복호화 방법 및 그 방법을이용한 부호화기/복호화기
JP4894451B2 (ja) * 2006-10-24 2012-03-14 富士ゼロックス株式会社 画像処理装置、及びプログラム
JP2008113258A (ja) * 2006-10-30 2008-05-15 Fuji Xerox Co Ltd 画像生成装置、画像処理装置、及びプログラム
US7916870B2 (en) * 2006-11-03 2011-03-29 Verizon Patent And Licensing Inc. Systems and methods for document control using public key encryption
US8325852B2 (en) * 2007-06-08 2012-12-04 Samsung Electronics Co., Ltd. CDD precoding for open loop SU MIMO
KR101449434B1 (ko) * 2008-03-04 2014-10-13 삼성전자주식회사 복수의 가변장 부호 테이블을 이용한 멀티 채널 오디오를부호화/복호화하는 방법 및 장치
US10943030B2 (en) * 2008-12-15 2021-03-09 Ibailbonding.Com Securable independent electronic document
FR2951345B1 (fr) * 2009-10-13 2013-11-22 Canon Kk Procede et dispositif de traitement d'une sequence video
US9819358B2 (en) 2010-02-19 2017-11-14 Skype Entropy encoding based on observed frequency
US9609342B2 (en) 2010-02-19 2017-03-28 Skype Compression for frames of a video signal using selected candidate blocks
US9313526B2 (en) 2010-02-19 2016-04-12 Skype Data compression for video
KR101538362B1 (ko) 2010-07-13 2015-07-22 닛본 덴끼 가부시끼가이샤 영상 복호 장치, 영상 복호 방법 및 영상 복호 프로그램을 저장한 컴퓨터 판독 가능한 저장 매체
CN102063919B (zh) * 2010-11-26 2012-05-09 清华大学 一种基于音频片段切分的数字音频时域压缩方法
CN104041054A (zh) * 2012-01-17 2014-09-10 索尼公司 编码设备及编码方法、解码设备及解码方法以及程序
FR3031263B1 (fr) * 2014-12-31 2017-02-10 Thales Sa Procede de protection de donnees echangees entre un codeur et un decodeur dans une installation video, codeur, decodeur et systeme de codage/decodage associes
CN104581120A (zh) * 2015-01-23 2015-04-29 深圳超多维光电子有限公司 图像信息保存方法、保存装置、立体图像生成方法和装置
US10063892B2 (en) * 2015-12-10 2018-08-28 Adobe Systems Incorporated Residual entropy compression for cloud-based video applications
KR102042651B1 (ko) * 2018-05-31 2019-11-08 서울대학교산학협력단 희소 벡터 코딩을 이용한 정보 송수신 방법 및 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1209019A (zh) * 1997-08-20 1999-02-24 三星电子株式会社 Mpeg2 活动图像编码/解码系统
EP1001604A2 (en) * 1998-11-10 2000-05-17 Canon Kabushiki Kaisha Information processing apparatus and method
EP1005230A2 (en) * 1998-11-25 2000-05-31 Sony Corporation Coding apparatus and method, decoding apparatus and method, data processing system, and storage medium

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2627337B1 (fr) * 1988-02-17 1990-06-08 Thomson Csf Procede de codage et procede de decodage a longueur variable, dispositif de codage et dispositif de decodage pour la mise en oeuvre de ce proced
US4939515A (en) * 1988-09-30 1990-07-03 General Electric Company Digital signal encoding and decoding apparatus
US5475388A (en) * 1992-08-17 1995-12-12 Ricoh Corporation Method and apparatus for using finite state machines to perform channel modulation and error correction and entropy coding
JPH06217274A (ja) * 1993-01-18 1994-08-05 Matsushita Electric Ind Co Ltd 画像信号圧縮装置
JPH08130649A (ja) * 1994-11-01 1996-05-21 Canon Inc データ処理装置
US5778102A (en) * 1995-05-17 1998-07-07 The Regents Of The University Of California, Office Of Technology Transfer Compression embedding
US5680129A (en) * 1995-07-18 1997-10-21 Hewlett-Packard Company System and method for lossless image compression
JP3306271B2 (ja) * 1995-08-23 2002-07-24 三洋電機株式会社 符号化方法、符号化回路、及び復号回路
WO1998001954A2 (en) * 1996-07-03 1998-01-15 Philips Electronics N.V. Transmission and reception of a digital information signal
US6031914A (en) * 1996-08-30 2000-02-29 Regents Of The University Of Minnesota Method and apparatus for embedding data, including watermarks, in human perceptible images
TW312770B (en) 1996-10-15 1997-08-11 Japen Ibm Kk The hiding and taking out method of data
GB2321375B (en) * 1997-01-21 2002-02-27 Fujitsu Ltd Data encoding method and apparatus and data decoding method and apparatus
US6052205A (en) * 1997-02-14 2000-04-18 Ricoh Company, Ltd. Image data encoding/decoding method and apparatus configured to compress both natural gray scale images and binary images
JPH10322222A (ja) 1997-05-15 1998-12-04 Nippon Telegr & Teleph Corp <Ntt> 可変長符号化・復号方法および装置
JP3959789B2 (ja) 1997-08-15 2007-08-15 ソニー株式会社 情報付加装置及び付加情報識別装置
US6330672B1 (en) * 1997-12-03 2001-12-11 At&T Corp. Method and apparatus for watermarking digital bitstreams
US6064748A (en) * 1998-01-16 2000-05-16 Hewlett-Packard Company Method and apparatus for embedding and retrieving additional data in an encoded data stream
US6219457B1 (en) * 1998-05-26 2001-04-17 Silicon Graphics, Inc. Method and system for decoding data encoded in a variable length code word
JP3593884B2 (ja) * 1998-05-27 2004-11-24 富士ゼロックス株式会社 符号化装置および復号装置
US6546139B1 (en) 1998-10-07 2003-04-08 Sony Corporation Coding apparatus and method, decoding apparatus and method, data processing system, storage medium, and signal
DE69943015D1 (de) * 1998-10-07 2011-01-20 Sony Corp Verfahren und Vorrichtung zur Bilddatenkodierung mit Zusatzdateneinfügung
JP3365331B2 (ja) 1999-02-01 2003-01-08 ヤマハ株式会社 ベクトル量子化装置およびベクトル量子化方法
US6384750B1 (en) * 2000-03-23 2002-05-07 Mosaid Technologies, Inc. Multi-stage lookup for translating between signals of different bit lengths
US6687384B1 (en) * 2000-03-27 2004-02-03 Sarnoff Corporation Method and apparatus for embedding data in encoded digital bitstreams
JP3709818B2 (ja) * 2000-10-31 2005-10-26 日本ビクター株式会社 符号化テーブル及びそれを用いた変調装置、伝送装置並びに記録媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1209019A (zh) * 1997-08-20 1999-02-24 三星电子株式会社 Mpeg2 活动图像编码/解码系统
EP1001604A2 (en) * 1998-11-10 2000-05-17 Canon Kabushiki Kaisha Information processing apparatus and method
EP1005230A2 (en) * 1998-11-25 2000-05-31 Sony Corporation Coding apparatus and method, decoding apparatus and method, data processing system, and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开平10-322222A 1998.12.04

Also Published As

Publication number Publication date
WO2002035848A1 (en) 2002-05-02
JP4214440B2 (ja) 2009-01-28
CN101355699A (zh) 2009-01-28
US6859155B2 (en) 2005-02-22
CN101188759A (zh) 2008-05-28
CN1804902A (zh) 2006-07-19
KR20020064942A (ko) 2002-08-10
JP2002135555A (ja) 2002-05-10
EP1331820A4 (en) 2006-04-19
CN101188759B (zh) 2011-10-26
CN100541536C (zh) 2009-09-16
KR100821022B1 (ko) 2008-04-08
CN1397137A (zh) 2003-02-12
US20030001757A1 (en) 2003-01-02
EP1331820A1 (en) 2003-07-30
CN100490531C (zh) 2009-05-20

Similar Documents

Publication Publication Date Title
CN101355699B (zh) 数据处理装置
CN1697522B (zh) 图像编码装置和图像解码装置
KR100636606B1 (ko) 화상 처리 장치, 화상 처리 방법 및 기록 매체
CN101505429B (zh) 对视频数据进行内编码的方法和设备
JP4138391B2 (ja) 可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法
EP0810792B1 (en) Encoding and decoding system of motion image containing objects of arbitrary shapes
CN102227911B (zh) 图像预测编码装置和方法、图像预测解码装置和方法、以及编码/解码系统和方法
US4853778A (en) Method of compressing image signals using vector quantization
US20100074541A1 (en) Coding and decoding method and apparatus using plural scanning patterns
US6020923A (en) Method and apparatus for coding and recording an image signal and recording medium for storing an image signal
JPS62173870A (ja) 画像デ−タの直交変換符号化方法
KR100272120B1 (ko) 양자화 컨트롤 회로
MXPA99012106A (es) Metodo y aparato para mover imagenes codificadas y medio para grabar el programa para mover imagenes codificadas.
JP4086966B2 (ja) 映像信号符号化装置
JP2625674B2 (ja) 画像信号の符号化方法および符号化装置
JP4507130B2 (ja) データ処理装置およびデータ処理方法、並びに記録媒体
JP2527352B2 (ja) ベクトル量子化による画像デ―タの圧縮装置
Sezan et al. Progressive transmission of images using a prediction/residual encoding approach
JP4569056B2 (ja) 情報処理装置および情報処理方法、記録媒体、並びにプログラム
KR19990037167A (ko) 인코딩 장치 및 방법, 디코딩 장치 및 방법 및 기록 매체
JPH10257499A (ja) 動画像符号化装置および方法
JPH0714205B2 (ja) 順次再生ベクトル量子化符号化・復号化装置
JPH01879A (ja) ベクトル量子化による画像データの圧縮装置
JPS63296564A (ja) ビットプレ−ン予測符号化方法
JPH03239068A (ja) 画像データ圧縮装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110928

Termination date: 20131012