KR20060027814A - 압축된 비디오 비트스트림에 워터마크를 삽입하기 위한인코딩 방법 및 장치 - Google Patents

압축된 비디오 비트스트림에 워터마크를 삽입하기 위한인코딩 방법 및 장치 Download PDF

Info

Publication number
KR20060027814A
KR20060027814A KR1020057024754A KR20057024754A KR20060027814A KR 20060027814 A KR20060027814 A KR 20060027814A KR 1020057024754 A KR1020057024754 A KR 1020057024754A KR 20057024754 A KR20057024754 A KR 20057024754A KR 20060027814 A KR20060027814 A KR 20060027814A
Authority
KR
South Korea
Prior art keywords
block
coefficients
coded
video bitstream
bits
Prior art date
Application number
KR1020057024754A
Other languages
English (en)
Other versions
KR101100811B1 (ko
Inventor
질 맥도날드 보이스
다니엘 리차드 기레리니
펑 인
Original Assignee
톰슨 라이센싱
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 톰슨 라이센싱 filed Critical 톰슨 라이센싱
Publication of KR20060027814A publication Critical patent/KR20060027814A/ko
Application granted granted Critical
Publication of KR101100811B1 publication Critical patent/KR101100811B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0042Fragile watermarking, e.g. so as to detect tampering
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0052Embedding of the watermark in the frequency domain

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

비디오 콘텐츠를 워터마크 표시하기 위한 비디오 인코더(600), 디코더(700), 및 방법(200, 300, 400, 500)이 개시되며, 상기 인코더는, 비디오 비트스트림의 계수를 양자화하기 위한 양자화 유닛(630)과, 상기 양자화 유닛과 신호 통신하며, 블록 내 코딩된 계수의 수의 패리티에 따라 디지털 지문의 비트를 비디오 비트스트림의 블록에 매립하기 위한 매립 유닛(635)을 포함하며; 상기 디코더는, 블록 내 코딩된 계수의 수의 패리티에 따라 비디오 비트스트림의 블록 내 디지털 지문의 비트를 검출하기 위한 검출 유닛(715)과, 상기 검출 유닛과 신호 통신하며, 비디오 비트스트림의 계수를 역양자화하기 위한 역양자화 유닛(720)을 포함한다.

Description

압축된 비디오 비트스트림에 워터마크를 삽입하기 위한 인코딩 방법 및 장치{ENCODING METHOD AND APPARATUS FOR INSERTION OF WATERMARKS IN A COMPRESSED VIDEO BITSTREAM}
본 출원은, 그 전체 내용이 본 명세서에 참조문헌으로 완전히 병합된, "METHOD AND APPARATUS FOR INSERTION AND DETECTION OF FINGERPRINTS IN A COMPRESSED VIDEO BITSTREAM"이라는 명칭의, 2003년 6월 25일에 출원된, U.S. 가특허 출원 일련 번호 60/482,302(해외 대리인 관리 번호 PU030163)의 이익을 청구한다.
본 발명은 비디오 인코더 및 디코더에 관한 것으로 보다 상세하게는 워터마크를 삽입 및/또는 검출하기 위한 장치 및 방법에 관한 것이다.
종종 예를 들어 저작권 자료를 권한 없이 배포하는 자를 식별하기 위해 압축된 비디오 비트스트림의 소스를 식별할 수 있는 것이 요구될 수 있다. 비트스트림을 생성하는데 사용되는 인코더는 인코딩 프로세스 동안 지문(또는 워터마크)을 삽입함으로써 유니크(unique)하게 식별될 수 있다. 이상적으로, 워터마크의 삽입 처리는 추가되는 연산 복잡도가 낮아야 하고, 삽입된 워터마크는 시각적으로 검출할 수 없어야 하며 또한 워터마크의 삽입 후 코딩 효율에 대한 영향이 매우 낮아야 한 다.
볼 수 없으면서 로버스트한 워터마크 및/또는 취약한 워터마크를 압축된 이미지와 비디오에 삽입하기 위한 기술이 다수 제안되었다. 그 중 한 부류의 기술은, 인간 시각 체계(HVS : Human Visual System)의 주파수 응답 감도에 기초하여 이산 코사인 변환(DCT : Discrete Cosine Transform), 웨이브릿(wavelet) 변환 또는 다른 변환 영역으로 워터마크 신호를 생성한다.
일부 시스템은 JPEG 또는 MPEG 압축된 이미지/비디오의 양자화된 DCT 변환 계수 상에서 동작하며, 여기서 특정 변환 계수의 최하위 비트(LSB : Least Significant Bit)는 워터마크 신호 비트의 패리티(parity)와 일치하도록 조정된다.
따라서, 거의 시각적으로 검출할 수 없는 워터마크를 삽입하고 검출할 수 있으면서 추가적인 연산 복잡도가 낮은 인코더 및 디코더에 대한 요구가 존재한다.
종래 기술의 이들 및 다른 단점 및 약점은 본 발명에 따라 거의 시각적으로 검출할 수 없는 워터마트를 삽입 및 검출할 수 있는 장치 및 방법에 의해 처리된다.
본 발명의 원리에 따라, 비디오 콘텐츠를 워터마크 표시하기 위한 인코더가 개시되며, 상기 인코더는, 비디오 비트스트림의 계수를 양자화하기 위한 양자화 유닛과; 상기 양자화 유닛과 신호 통신하며, 블록 내 코딩된 계수의 수의 패리티에 따라 디지털 지문의 비트를 비디오 비트스트림의 블록에 매립하기 위한 매립 유닛을 포함한다.
본 발명의 이들 및 다른 측면, 특징 및 잇점은 첨부 도면을 참조하여 판독될 예시적인 실시예의 이하 상세한 설명으로부터 보다 명백해질 것이다.
본 발명은 이하 예시적인 도면을 참조하여 보다 더 잘 이해될 수 있을 것이다.
도 1은 블록 인코더의 흐름도.
도 2는 본 발명의 원리에 따라 지문 삽입을 위한 블록 인코더의 처리 흐름도.
도 3은 본 발명의 원리에 따라 강요된 지문 삽입을 위한 블록 인코더의 처리 흐름도.
도 4는 본 발명의 원리에 따라 요구되는 지문 삽입을 위한 블록 인코더의 처리 흐름도.
도 5는 본 발명의 원리에 따라 지문 검출을 위한 블록 디코더의 처리 흐름도.
도 6은 본 발명의 원리에 따라 지문 삽입을 위한 블록 인코더를 구비하는 비디오 인코더의 블록도.
도 7은 본 발명의 원리에 따라 지문 검출을 위한 블록 디코더를 구비하는 비디오 디코더의 블록도.
본 발명의 실시예는 거의 시각적으로 검출할 수 없는 워터마크를 삽입 및 검 출할 수 있으면서 추가되는 연산 복잡도가 낮은 방법 및 장치를 제공한다. 이하 상세한 설명에서, 인코더 및 디코더는 간략하게 하기 위해 집합적으로 CODEC으로 지칭할 수 있으나, 본 방법 및 장치의 실시예는 인코딩만, 디코딩만, 또는 인코딩과 디코딩 모두를 수행할 수 있다. 동일한 요소는 여러 도면에서 백 단위 위치에 그 도면을 특정하는 숫자를 가지고 있는 동일한 참조 번호로 지시될 수 있다. "워터마크(watermark)" 및 "지문(fingerprint)"이라는 용어는 본 명세서에서 서로 대체 가능하게 사용된다.
MPEG-2, MPEG-4, 및 JVT와 같은 대중적인 비디오 압축 표준은 인트라 코딩된(intra-coded) I 프레임과 인터 코딩된(inter-coded) P 및 B 프레임을 포함한다. 압축된 비디오 비트스트림에서 랜덤 액세스 포인트는 화상을 MPEG-2에서 화상 그룹(GOP : Groups of Pictures)으로 또는 독립적인 디코더 리프레쉬 기간(IDR : Independent Decoder Refresh periods)으로 그룹화시킴으로써 가능하게 이루어질 수 있다. 이들 표준에서, 코딩된 화상은 중복되지 않는 블록으로 분할된다. 각 블록은 이산 코사인 변환(DCT : Discrete Cosine Transform)을 사용하거나 또는 이와 유사한 변환을 사용하여 변환된 후, 양자화된 다음, 제로 아닌 양자화 계수만이 코딩되도록 런렝쓰 코딩된다. 양자화 프로세스는 균일하거나 불균일할 수 있으며, 데드존(dead-zones) 및/또는 임계값(thresholding)을 사용할 수 있다. 예를 들어, JVT JM 참조 소프트웨어는 임계값을 사용하며, 이에 의해, 양자화 프로세스의 제 1 단계 이후 제로 아닌 계수의 수가 임계값(T)보다 더 작은 경우, 블록 내 모든 계수를 제로로 양자화하기 위해 양자화 프로세스의 제 2 단계를 적용한다.
본 상세한 설명은 본 발명의 원리를 예시한다. 따라서, 이 기술 분야에 숙련된 자라면, 본 명세서에 명시적으로 기술되거나 도시되지 않았을지라도, 본 발명의 원리를 구현하고 본 발명의 사상과 범위 내에 포함된 여러 가지 배열을 고안할 수 있을 것이라는 것을 이해할 수 있을 것이다.
본 명세서에 언급된 모든 예와 조건적 언어는 본 발명자가 종래 기술을 발전시키는데 기여한 본 발명의 원리와 개념을 독자가 이해하는 것을 돕기 위한 교수 목적으로 의도된 것일 뿐 그와 같이 구체적으로 언급된 예와 조건으로 제한되는 것으로 해석되어서는 아니된다.
나아가, 본 발명의 특정 예 뿐만 아니라 본 발명의 원리, 양상, 및 실시예를 나열하는 본 명세서의 모든 진술은 본 발명의 구조와 기능에 있어서의 균등물을 포함하는 것으로 의도되어 있다. 부가적으로, 그와 같은 균등물은 현재 알려진 균등물 뿐만 아니라 장래에 개발될 균등물, 즉 구조에 상관없이 동일한 기능을 수행하는 것으로 개발된 임의의 요소를 모두 포함하는 것으로 의도되어 있다.
따라서, 예를 들어, 이 기술 분야에 숙련된 자라면, 본 명세서에 제시된 블록도가 본 발명의 원리를 구현하는 예시적인 회로의 개념적인 도면을 나타내는 것임을 이해할 수 있을 것이다. 유사하게, 임의의 플로우 차트, 흐름도, 상태 전이도, 의사 코드(pseudocode) 등은, 실질적으로 컴퓨터 판독가능한 매체에 제공될 수 있고, 컴퓨터나 프로세서가 명시적으로 도시되어 있는지에 상관없이, 이 컴퓨터나 프로세서에 의해 실행될 수 있는 여러 프로세스를 나타낸다는 것을 이해할 수 있을 것이다.
본 도면에 도시된 여러 요소의 기능은 적절한 소프트웨어와 관련하여 소프트웨어를 실행할 수 있는 하드웨어 뿐만 아니라 전용 하드웨어를 사용하여 제공될 수 있다. 프로세서에 의해 제공될 때, 이 기능은 하나의 전용 프로세서, 하나의 공용 프로세서, 또는 일부를 공유할 수 있는 복수의 개별 프로세서에 의해 제공될 수 있다. 나아가, "프로세서" 또는 "제어기"라는 용어를 명시적으로 사용한다 해서 소프트웨어를 실행할 수 있는 하드웨어를 배타적으로 언급하는 것으로 해석하여서는 아니되며, 이 용어는 암시적으로 디지털 신호 프로세서("DSP") 하드웨어, 소프트웨어를 저장하기 위한 판독 전용 메모리("ROM"), 랜덤 액세스 메모리("RAM") 및 비휘발성 저장 수단을, 제한 없이, 포함할 수 있다.
다른 하드웨어, 종래 및/또는 관습적인 구성도 포함될 수 있다. 유사하게, 본 도면에 도시된 임의의 스위치는 단지 개념적이다. 그 기능은 프로그램 논리 회로의 동작을 통해, 전용 논리 회로를 통해, 프로그램 제어 및 전용 논리 회로의 상호 작용을 통해, 또는 심지어 수동으로 수행될 수 있으며, 특정 기술은 그 문맥으로부터 보다 구체적으로 이해되는 바와 같이 구현하는 자에 따라 선택될 수도 있다.
본 발명의 청구범위에서, 특정 기능을 수행하기 위한 수단으로 표현된 임의의 요소는, 예를 들어, a) 그 기능을 수행하는 회로 요소의 조합 또는 b) 그 기능을 수행하기 위한 소프트웨어를 실행하는 적절한 회로와 조합된 펌웨어, 마이크로코드 등을 포함하는 임의의 형태의 소프트웨어를 포함하여 특정 기능을 수행하는 임의의 방식을 포함하는 것으로 의도된다. 본 청구범위에 의해 한정된 본 발명은 여러 언급된 수단이 제공하는 기능이 청구항이 요구하는 방식으로 결합 및 연결된다는 사실에 있다. 그리하여 출원인은 그러한 기능을 제공할 수 있는 임의의 수단을 본 명세서에 도시된 것과 균등한 것으로 간주한다.
도 1에 도시된 바와 같이, 블록 인코더의 처리 흐름도가 일반적으로 참조 번호 100으로 지시되어 있다. 이 블록 인코더의 처리 흐름도(100)는 제어를 기능 블록(114)으로 전달하는 시작 블록(110)을 포함한다. 이 기능 블록(114)은 인트라 또는 인터 예측(Intra or inter prediction)을 사용하여 블록을 예측하여 잔류 블록(residual block)을 형성하며 제어를 기능 블록(116)으로 전달한다. 차례로, 기능 블록(116)은 이 잔류 블록을 변환하여 변환 계수를 형성하며 제어를 기능 블록(118)으로 전달한다. 기능 블록(118)은 이 변환 계수를 양자화하여 양자화 계수를 형성하며 제어를 기능 블록(120)으로 전달한다. 차례로 이 기능 블록(120)은 변수(N)를 블록 내 제로 아닌 양자화 계수의 수로 초기화하며 제어를 결정 블록(122)으로 전달한다. 결정 블록(122)은, N이 제로(0)인지 여부를 체크하며, 만약 N이 제로가 아니라면, 제어를 기능 블록(136)으로 전달하며, 이 기능 블록(136)은 이 블록을 엔트로피 코딩(entropy code)한 후, 제어를 종료 블록(139)으로 전달한다. 그러나, N이 제로라면, 결정 블록(122)은 제어를 기능 블록(137)으로 전달하며, 이 기능 블록(137)은 이 블록을 코딩하지 않으며, 코딩되지 않은 블록을 코딩된 블록 패턴(CBP : coded block pattern)으로 나타내거나 또는 이 매크로블록을 스킵함으로써 나타낸다. 이 기능 블록(137)은 차례로 제어를 종료 블록(139)으로 전달한다.
따라서, 도 1은 블록 기반 비디오 인코더를 위한 블록 인코딩 프로세스의 처 리 흐름도를 도시한다. 인터 또는 인트라 예측이 이 블록에 대해 형성되며, 이 블록으로부터 감산되어 잔류 블록을 형성한다. 인터 예측을 위해, 움직임 보상이 일반적으로 사용된다. 인트라 예측은 다른 코딩 표준에 대해서는 다르게 수행되지만, 항상 동일한 코딩된 화상 내 인접한 블록이나 매크로블록으로부터의 정보를 사용한다. 이 잔류 블록은 블록 변환을 사용하여 변환되어 변환 계수를 형성한다. 변환 계수는 양자화되어 양자화 계수를 형성한다. 제로 아닌 값을 갖는 양자화 계수의 수(N)가 카운트된다. 만약 N이 제로라면, 블록은 코딩되지 않는다. 만약 동일한 매크로블록에 있는 다른 블록이 코딩된다면, 블록의 비-코딩이 코딩된 블록 패턴(CBP)을 사용하여 나타내진다. 만약 동일한 매크로블록에 있는 모든 블록이 코딩되지 않는다면, 이 매크로블록은 스킵된다(skipped). 만약 블록이 코딩되려 한다면, 제로 아닌 계수는 런렝쓰 코딩(runlength coding)을 사용하여 엔트로피 코딩된다.
본 발명의 실시예는, 유니크한 지문을 압축된 비디오 스트림에 삽입 및 검출할 수 있으면서 복잡도가 낮은 방법을 제공한다. 취약한 디지털 지문(또는 워터마크)을 압축된 비디오 비트스트림에 삽입 및 검출하기 위한 방법은 압축된 비디오 비트스트림을 생성하는데 사용되는 인코더를 식별할 수 있도록 기술된다. 본 방법은, 특히 MPEG AVC/ITU H.264 비트스트림에 포함시키는데 매우 적합하다. 블록 내 코딩된 계수의 수의 패리티가 코드의 비트 값에 일치시킴으로써 비트스트림 내 코딩된 블록에 유니크한 식별 코드(지문)의 일 비트가 매립된다.
본 실시예는, 인코딩 프로세스 동안, 유니크한 지문이 비디오 압축 인코더에 의하여 압축된 비디오 비트스트림에 매립될 수 있게 한다. 길이 L인 비트의 유니크 한 지문 시퀀스(FSEQ)가 생성되어 비디오 인코더를 유니크하게 식별한다.
비디오 압축 인코딩 프로세스 동안, 블록에 대해 코딩된(제로 아닌) 계수의 총 수의 패리티를 지문 시퀀스의 비트와 일치시킴으로써 지문 시퀀스로부터 일 비트가 코딩된 블록에 매립된다. 이 계수의 총 수는 AC 계수만이나 또는 AC 계수와 DC 계수를 나타낼 수 있다. O 비트에 대해 제로 아닌 계수의 짝수(even number)가 코딩되어야 하는 반면, 1 비트에 대해, 제로 아닌 계수의 홀수(odd number)가 코딩되어야 한다.
도 2를 참조하면, 지문 삽입을 위한 블록 인코더의 처리 흐름도가 일반적으로 참조 번호 200으로 지시되어 있다. 이 블록 인코더의 처리 흐름도(200)는 제어를 기능 블록(214)으로 전달하는 시작 블록(210)을 포함한다. 이 기능 블록(214)은 인트라 또는 인터 예측을 사용하여 블록을 예측하여 잔류 블록을 형성하며, 제어를 기능 블록(216)으로 전달한다. 차례로 기능 블록(216)은 이 잔류 블록을 변환하여 변환 계수를 형성하며, 제어를 기능 블록(218)으로 전달한다. 기능 블록(218)은 이 변환 계수를 양자화하여 양자화 계수를 형성하며, 제어를 기능 블록(220)으로 전달한다.
차례로 기능 블록(220)은 변수(N)를 블록 내 제로 아닌 양자화 계수의 수로 초기화하며, 제어를 결정 블록(222)으로 전달한다. 이 결정 블록(222)은 N이 제로인지 여부를 체크하며, 만약 N이 제로라면 제어를 기능 블록(237)으로 전달하며, 이 기능 블록(237)은 이 블록을 코딩하지 않으며 이 코딩되지 않은 블록을 코딩된 블록 패턴(CBP)으로 나타내거나 또는 이 매크로블록을 스킵함으로써 나타낸다. 차 례로 기능 블록(237)은 제어를 종료 블록(239)으로 전달한다. 그러나, 만약 N이 제로가 아니라면, 결정 블록(222)은 제어를 기능 블록(230)으로 전달하며, 기능 블록(230)은 지문 시퀀스(F)의 그 다음 비트를 획득하며, 제어를 결정 블록(232)으로 전달한다. 이 결정 블록(232)은, 지문 시퀀스(F)가 N 모듈로 2 (N modulo 2)인지 여부를 체크하며, 만약 F가 N 모듈로 2인 경우, 제어를 기능 블록(236)으로 전달하며, 이 기능 블록(236)은 이 블록을 엔트로피 코딩하며, 제어를 종료 블록(239)으로 전달한다. 그러나, F가 N 모듈로 2가 아니라면, 결정 블록(232)은 제어를 기능 블록(234)으로 전달하며, 이 기능 블록(234)은 이 블록을 재양자화하여, N의 새로운 값이 F가 N 모듈로 2가 되고 N이 제로보다 더 크게 되도록 한다. 차례로 기능 블록(234)은 제어를 전술된 기능 블록(236)으로 전달한다.
도 2는 지문 삽입을 위한 블록 기반 비디오 인코더의 블록 인코딩 프로세스를 도시한다. 인터 또는 인트라 예측이 이 블록에 대해 형성되며, 이 블록으로부터 감산되어 잔류 블록을 형성한다. 잔류 블록은 이후 블록 변환을 사용하여 변환되어 변환 계수를 형성한다. 이 변환 계수는 양자화 되어 양자화 계수를 형성한다. 제로가 아닌 값을 갖는 양자화 계수의 수(N)가 카운트된다. 만약 N이 제로라면, 이 블록은 코딩되지 않으며, 지문 시퀀스 비트가 이 블록에 매립되지 않는다. 만약 N이 제로가 아니라며, 이 블록은 코딩되며, 지문 시퀀스의 비트(F)가 이 블록에 매립된다. 만약 N%2 (여기서 %는 모듈러 연산자를 나타냄)가 F라면, 비트(F)를 이 블록에 매립하기 위한 조치가 필요치 않으며, 이 블록은 엔트로피 코딩된다. 만약 N%2가 F가 아니라면, 이 블록은 재양자화되어, N의 새로운 값이 N%2=F가 되고 N > 0이 되 도록 한다.
동일한 매크로블록에 있는 다른 블록이 코딩되는 경우, 블록의 비-코딩은 코딩된 블록 패턴(CBP)을 사용하여 나타내진다. 동일한 매크로블록에 있는 모든 블록이 코딩되지 않는다면, 이 매크로블록은 스킵된다. 만약 이 블록이 코딩되는 경우, 제로 아닌 계수는 런렝쓰 코딩을 사용하여 엔트로피 코딩된다.
블록의 재양자화가 필요한 경우, 인코더는, N의 새로운 값이 N%2=F 이고 N>0이 되는 조건을 충족하도록 블록을 재양자화하는 임의의 방법을 선택할 수 있다. 블록 내 제로 아닌 계수의 수는 이 블록을 재양자화함으로써 지문 신호 비트를 일치시키기 위해 일(1)씩 증가 또는 감소될 수 있다. 이들 블록이 코딩되지 않아 워터마크 검출기가 블록에 매립된 지문 비트를 이 블록이 가지고 있는지 결정할 수 없을 때에는 재양자화 프로세스가 제로 아닌 계수로 블록을 생성할 필요가 없다. 그래서, 블록 내 제로 아닌 계수의 수가 일(1)이라면, 그 수는 감소되는 대신 증가되어야 한다.
N의 값은, 초기에 제로 아닌 양자화 계수에 대응하였던 변환 계수를 제로로 재양자화함으로써 일(1)씩 감소될 수 있다. 인코더는 예를 들어 압축된 비디오 품질에 대한 영향을 최소화하기 위해, 제로로 재양자화할, 최저 값의 변환 계수나 최고 주파수 위치의 제로 아닌 계수를 선택할 수 있다.
N의 값은, 제로 값을 갖는 양자화 계수를 제로 아닌 값, 예를 들어 1로 설정된 값으로 재양자화함으로써 증가될 수 있다. 인코더는, 제 1 양자화 단계의 맨 마지막 제로 아닌 양자화 계수에 대한 스캔 순서에 있는 주파수 위치보다 하나 더 높 은 주파수 위치에 있는 변환 계수를 1로 재양자화할 것을 선택할 수 있다. JVT 압축 표준에서, CAVLC 엔트로피 코딩이 사용되면, 트레일링(trailing) 블록이 효과적으로 인코딩되므로, 이 방식으로 제로 아닌 계수를 추가하는 것은 이 블록을 인코딩하는데 필요한 비트의 수에 거의 영향을 주지 않게 된다. 동일한 전략이 CABAC와 같은 다른 엔트로피 코딩 방법과 함께 사용될 수 있다.
지문 비트를 어느 코딩된 블록에 매립할지를 선택하기 위한 패턴은 미리 결정되어 있으며, 인코더와 지문 검출기에 의해 사용된다. 처음 L개의 코딩된 블록이 사용되어 L 비트 시퀀스를 인코딩할 수 있다. 대안적으로, 임의의 미리 결정된 값(M)에 대해 매 M번째 코딩된 블록이 L*M개의 코딩된 블록에 있는 L 비트 시퀀스를 코딩하는데 사용될 수 있다. 다른 패턴이 또한 사용될 수 있다.
L 비트 지문 시퀀스는 비디오 시퀀스에 여러번 반복될 수 있으며 또는 단 한번만 삽입될 수 있다. 전체 L 비트 시퀀스가 일단 매립되면, 지문 매립 프로세스는 특정 재시작 포인트에 이르기까지 중지할 수 있다. 바람직한 실시예에서, L 비트 지문 시퀀스는 매 화상 그룹(Group of Picture)이나 IDR마다 반복된다.
인코더는, 전체 L 비트 시퀀스가 일정 개수(B)의 블록에 대응하는, 일정 개수의 비디오 화상, 슬라이스, 또는 매크로블록에 매립될 것을 요구하도록 선택할 수 있다. 바람직한 실시예에서, 인코더는, 전체 L 비트 시퀀스가 매 I 화상에 인코딩될 것을 요구한다.
비디오 화상의 인코딩 전에, 비디오 화상이 얼마나 많은 블록으로 분할되어 있는지는 알려져 있지만, 이들 블록 중 얼마나 많은 블록이 코딩되지 않은 것으로 분류될 것인지는 알려져 있지 않다. 코딩된 것으로 분류된 블록만이 지문 비트를 매립하는데 사용된다. 전체 L 비트 지문 시퀀스가 원하는 개수(B)의 블록에 매립되어야 하는 조건을 충족하기 위해, 인코더는, 초기에 코딩되지 않은 블록을 코딩되게 하여, 지문 비트가 그 블록에 매립될 수 있게 한다. 이것은, 제로 아닌 계수의 새로운 수(N)가 제로보다 더 크도록 이 블록을 재양자화함으로써 수행된다.
이제 도 3을 참조하면, 강요된 지문 삽입을 위한 블록 인코더의 처리 흐름도가 일반적으로 참조 번호 300으로 지시되어 있다. 이 블록 인코더의 처리 흐름도(300)는 제어를 기능 블록(314)으로 전달하는 시작 블록(310)을 포함한다. 기능 블록(314)은 인트라 또는 인터 예측을 사용하여 블록을 예측하여 잔류 블록을 형성하며, 제어를 기능 블록(316)으로 전달한다. 차례로 기능 블록(316)은 이 잔류 블록을 변환하여 변환 계수를 형성하며, 제어를 기능 블록(318)으로 전달한다. 기능 블록(318)은 변환 계수를 양자화하여 양자화 계수를 형성하며, 제어를 기능 블록(320)으로 전달한다.
차례로 기능 블록(320)은 변수(N)를 블록 내 제로 아닌 양자화 계수의 수로 초기화하고, 제어를 기능 블록(330)으로 전달하며, 기능 블록(330)은 지문 시퀀스(F)의 그 다음 비트를 획득하며, 제어를 결정 블록(333)으로 전달한다. 결정 블록(333)은 지문 시퀀스(F)가 N 모듈로 2 (N modulo 2)인지 또 N이 제로보다 더 큰지 여부를 체크하며, 만약 두 조건이 모두 성립한다면, 제어를 기능 블록(336)으로 전달하며, 기능 블록(336)은 이 블록을 엔트로피 코딩하며, 제어를 종료 블록(339)으로 전달한다. 그러나, 만약 F가 N 모듈로 2가 아니거나 또는 N이 제로보다 더 크지 않은 경우, 결정 블록(333)은 제어를 기능 블록(334)으로 전달하며, 기능 블록(334)은 이 블록을 재양자화하여, N의 새로운 값이 F가 N 모듈로 2와 같고 N이 제로보다 더 크게 되도록 한다. 차례로 기능 블록(334)은 제어를 전술된 기능 블록(336)으로 전달한다.
도 3은 강요된 지문 삽입을 위한 블록 인코더의 처리 흐름도를 도시한다. 즉, 이 블록은 코딩되지 않도록 허용되지 않으므로, 지문 비트가 이 블록에 매립되는 것이 보장된다. 처음 몇몇 단계는 도 2의 단계와 동일하다. 인터 또는 인트라 예측이 이 블록에 대해 형성되며 이 블록으로부터 감산되어 잔류 블록을 형성한다. 이 잔류 블록은 이후 블록 변환을 사용하여 변환되어 변환 계수를 형성한다. 이 변환 계수는 양자화되어 양자화 계수를 형성한다. 제로 아닌 값을 갖는 양자화 계수의 수(N)가 카운트된다. 이하 단계는 도 2와는 다르다. 만약 N > 0이고 F=N%2인 경우, 블록은 엔트로피 코딩될 수 있다. 그러나, 만약 이 두 조건이 충족되지 않는 경우, 블록은 N의 값이 조정되어 이들 조건이 충족되도록 재양자화되어야 한다. 도 2에서와는 달리, 이 재양자화 단계는, N=0인 경우, 즉 초기 양자화 후 블록이 코딩되지 않은 경우, 요구될 수 있다.
전체 L 비트 지문 시퀀스를 B 블록 내에 매립하는데 요구되는 인코더는 블록 카운트와 그 코딩된 블록 카운트(cbc)를 추적할 수 있다. 이후, 인코딩을 위해 남아 있는 블록의 수가 매립되기 위해 남아 있는 지문 비트의 수보다 더 이상 크지 않을 때, 인코더는 나머지 블록이 코딩되게 하며 즉 코딩되지 않은 것으로 분류되도록 허용하지 않는다.
도 4에 도시된 바와 같이, 요구되는 지문 삽입을 위한 블록 인코더의 처리 흐름도가 일반적으로 참조 번호 400으로 지시되어 있다. 이 블록 인코더의 처리 흐름도(400)는 제어를 루프 시작 블록(412)으로 전달하는 시작 블록(410)을 포함하며, 루프 시작 블록(412)은 루프 카운터(bc)를 초기화하며 이후에 제로와 최대 값(B) 사이에서 루프 카운터(bc)를 증분시킨다. 루프 시작 블록은 제어를 기능 블록(414)으로 전달한다. 기능 블록(414)은 인트라 또는 인터 예측을 사용하여 블록을 예측하여 잔류 블록을 형성하며, 제어를 기능 블록(416)으로 전달한다. 차례로 기능 블록(416)은 이 잔류 블록을 변환하여 변환 계수를 형성하며, 제어를 기능 블록(418)으로 전달한다. 기능 블록(418)은 이 변환 계수를 양자화하여 양자화 계수를 형성하며, 제어를 기능 블록(420)으로 전달한다.
기능 블록(420)은 변수(N)를 블록 내 제로 아닌 양자화 계수의 수로 초기화하며, 제어를 기능 블록(430)으로 전달한다. 기능 블록(430)은 지문 시퀀스(F=FS EQ[cbc})의 그 다음 비트를 획득하며, 제어를 결정 블록(422)으로 전달한다. 결정 블록(422)은 N이 제로인지 여부를 체크하며, 만약 N이 제로라면 제어를 결정 블록(424)으로 전달하며, 결정 블록(424)은 B에서 bc를 뺀 값이 지문 시퀀스 비트의 수(L)에서 코딩된 블록 카운트(bcb)를 뺀 것보다 더 큰지를 체크한다. 만약 더 크다면, 결정 블록(424)은 제어를 기능 블록(437)으로 전달하며, 기능 블록(437)은 이 블록을 코딩하지 않으며, 코딩되지 않은 블록을 코딩된 블록 패턴(CBP)으로 나타내거나 또는 이 매크로블록을 스킵함으로써 나타낸다. 차례로 기능 블록(437)은 제어를 루프 종료 블록(438)으로 전달하며, 루프 종료 블록(438)은 만약 루프 카운터 (bc)가 최대 값(B)에 이르지 않은 경우에는 제어를 다시 루프 시작 블록(412)으로 전달하며 또는 만약 루프 카운터(bc)가 최대값(B)에 이른 경우에는 제어를 종료 블록(439)으로 전달한다. 만약 B에서 bc를 뺀 값이 L에서 cbc를 뺀 것보다 더 크지 않다면, 결정 블록(424)은 제어를 기능 블록(426)으로 전달하며, 기능 블록(426)은 이 블록을 재양자화하여 N의 새로운 값이 F가 N 모듈로 2이고 N이 제로보다 더 크도록 한다. 차례로 기능 블록(426)은 제어를 기능 블록(428)으로 전달한다. 기능 블록(428)은 코딩된 블록 카운트(cbc)를 증분하며, 제어를 기능 블록(436)으로 전달하며, 이 기능 블록(436)은 이 블록을 엔트로피 코딩하며 제어를 루프 종료 블록(438)으로 전달한다.
그러나, N이 제로가 아니라면, 결정 블록(422)은 제어를 결정 블록(432)으로 전달한다. 결정 블록(432)은 지문 시퀀스(F)가 N 모듈로 2인지 여부를 체크하며, 만약 F가 N 모듈로 2라면, 제어를 전술된 기능 블록(428)으로 전달한다. 그러나, F가 N 모듈로 2가 아니라면, 결정 블록(432)은 제어를 전술된 기능 블록(426)으로 전달한다.
도 4는 슬라이스 또는 프레임 내 B 블록에 걸쳐 L 비트 시퀀스가 매립될 것을 요구하는 루프를 수행하는 요구된 지문 삽입을 하는 인코더의 처리 흐름도를 도시한다. 루프 카운터(bc)는 블록 카운터에 사용된다. 각 블록에 대해 초기 단계는 도 2 및 도 3 에서와 동일하다. 인터 또는 인트라 예측이 이 블록에 형성되며 블록으로부터 감산되어 잔류 블록을 형성한다. 이 잔류 블록은 블록 변환을 사용하여 변환되어 변환 계수를 형성한다. 변환 계수는 양자화되어 양자화 계수를 형성한다. 제로 아닌 양자화 계수의 수(N)가 카운트된다. N=0이라면, 처리될 나머지 블록의 수인 B-bc가, 매립될 나머지 지문 시퀀스 비트의 수인 L-cbc보다 더 큰지 여부가 더 체크되며, 더 큰 경우 블록이 코딩되지 않는다. 즉, B-bc > L-cbc라면, 블록은 코딩되지 않는다. 그러나, B-bc가 L-cbc보다 더 크지 않다면, 현재 블록은 코딩되어 모든 L 비트가 B 블록에 매립되는 조건을 충족시키도록 지문 비트가 매립될 수 있어야 한다. 변수(cbc)는 코딩된 블록 카운트이며, 이 코딩된 블록 카운트는 얼마나 많은 블록이 코딩되었는지, 즉 코딩되지 않은 것으로 분류되지 않은 블록이 얼마나 많은지 추적한다.
도 5를 참조하면, 지문 검출기의 처리 흐름도가 일반적으로 참조 번호 500으로 지시되어 있다. 이 지문 검출기의 처리 흐름도(500)는 제어를 루프 시작 블록(542)으로 전달하는 시작 블록(540)을 포함한다. 루프 시작 블록(542)은 루프 변수(cbc)를 제로로 초기화하며 후속적인 반복시 L의 최대 값까지 이 루프 변수를 증분시킨다. 루프 시작 블록(542)은 제어를 기능 블록(544)으로 전달하며, 이 기능 블록(544)은 카운트(N)를 블록 내 제로 아닌 양자화 계수의 수로 설정하며, 제어를 기능 블록(546)으로 전달한다. 차례로 기능 블록(546)은 지문 시퀀스(F=FSEQ[cbc])의 그 다음 비트를 획득하며, 제어를 결정 블록(548)으로 전달한다. 결정 블록(548)은 F가 N 모듈로 2인지 여부를 체크한다. 만약 N이 N 모듈로 2가 아니라면, 결정 블록(548)은 제어를 기능 블록(556)으로 전달하며, 기능 블록(556)은 지문이 검출되지 않은 것으로 판단하며, 제어를 종료 블록(558)으로 전달한다. 그러나, 만약 N이 N 모듈로 2라면, 결정 블록(548)은 제어를 루프 종료 블록(550)으로 전달하 며, 루프 종료 블록(550)은 만약 루프 변수(cbc)가 아직 L이 아닌 경우라면 제어를 다시 루프 시작 블록(542)으로 전달하며, 그렇지 않으면 제어를 기능 블록(552)으로 전달한다. 기능 블록(552)은 지문이 검출된 것으로 판단하며, 제어를 종료 블록(554)으로 전달한다.
압축된 비디오 비트스트림 내 지문을 검출하기 위해, 매립된 워터마크 비트가 L 비트 지문 시퀀스(FSEQ)와 일치하는지를 알아보기 위해 처음 L개의 코딩된 블록이 테스트된다. 예를 들어 매 M번째 블록에서 동작하는 블록과 같은 처음 L개의 코딩된 블록 내 비트가 매립되지 않은 패턴이 사용되는 경우, 이 프로세스는 동일한 패턴을 따르도록 조정될 수 있다.
도 5의 지문 검출기의 처리 흐름도의 실시예에 있어서, 처음 L개의 코딩된 블록은 루프 지수로 cbc로 루프 수행된다. 각 블록에 대해, 제로 아닌 양자화 계수의 수(N)가 카운트된다. 지문 시퀀스(F=FSEQ[cbc])의 그 다음 비트는 N %2와 비교된다. 만약 F=N%2라면, 루프는 계속 수행된다. 만약 루프 내 임의의 점에서 F가 N%2가 아니라면, 이 프로세스는 종료되며, 지문은 검출되지 않는다. 만약 루프가 L개의 코딩된 블록에 대해 F=N%2 조건이 항상 충족되며 완료하는 경우, 프로세스는 종료되며 지문이 검출된다.
L이 충분히 큰 경우, 지문 시퀀스의 패턴에 따라 코딩된 계수의 수 중 홀수의 지문이 없는 압축된 비트 스트림의 패턴은 거의 있을 것 같지 않은 약 2^L에서 1(1/2L)이다. L개의 코딩된 블록의 하나의 그룹의 지문 검출은, 만약 비트스트림이 초기에 생성된 것에서 어떤 방식으로 변경되었다면, 즉 채널 에러가 일어났다면, 실패할 수 있다. 더 큰 정도의 신뢰도를 제공하기 위해, 지문 검출기는 지문에 대한 코딩된 비트스트림의 각 GOP 또는 IDR을 체크할 수 있다.
도 6을 참조하면, 지문 삽입을 위한 예시적인 비디오 인코더가 일반적으로 참조 번호 600으로 지시되어 있다. 이 인코더(600)에의 입력은 합산점(summing junction)(610)의 비반전 입력과 신호 전달가능하게 연결된다. 합산점(610)의 출력은 블록 변환부(620)와 신호 전달가능하게 연결된다. 이 블록 변환부(620)는, 대안적으로 지문 삽입을 위한 블록 인코더를 구현하는 양자화기(630)와 신호 전달가능하게 연결되며, 이 양자화기는 워터마크 매립기(635)와 신호 전달가능하게 연결된다. 본 명세서에 있는 가르침에 기초하여 이 기술 분야에 통상의 지식을 가진 자라면 알 수 있는 바와 같이, 인코더(600)는 워터마크 매립기(635)와 양자화기(630)의 지문 삽입부 중 하나만을 포함할 필요가 있다. 매립기(635)의 출력은 가변 길이 코더(VLC : variable length coder)(640)와 신호 전달가능하게 연결되며, 이 VLC(640)의 출력은 인코더(600)의 외부로 이용가능한 출력이다.
양자화기(630)의 출력은 역 양자화기(650)와 신호 전달가능하게 더 연결된다. 역 양자화기(650)는 역 블록 변환기(660)와 신호 전달가능하게 연결되며, 이 역 블록 변환기(660)는 기준 화상 저장 수단(670)과 신호 전달가능하게 연결된다. 기준 화상 저장 수단(670)의 제 1 출력은 움직임 추정기(680)의 제 1 입력과 신호 전달가능하게 연결된다. 인코더(600)에의 입력은 이 움직임 추정기(680)의 제 2 입력에 신호 전달가능하게 더 연결된다. 움직임 벡터를 나타내는 이 움직임 추정기 (680)의 출력은 움직임 보상기(690)의 제 1 입력에 신호 전달가능하게 연결된다. 기준 화상 저장 수단(670)의 제 2 출력은 움직임 보상기(690)의 제 2 입력에 신호 전달가능하게 연결된다. 움직임 보상된 기준 화상을 나타내는 움직임 보상기(690)의 출력은 합산점(610)의 반전 입력에 신호 전달가능하게 연결된다.
도 7에 도시된 바와 같이, 지문 검출을 위한 예시적인 비디오 디코더가 일반적으로 참조 번호 700으로 지시되어 있다. 이 비디오 디코더(700)는, 워터마크 검출기(715)와 신호 통신가능하게 연결된 가변 길이 디코더("VLD")(710)를 포함하며, 워터마크 검출기(715)는 대안적으로 지문 검출을 위한 블록 디코더를 구현하는 역 양자화기(720)와 신호 전달가능하게 연결된다. 본 명세서에 있는 가르침에 기초하여 이 기술 분야에 통상의 지식을 가진 자라면 알 수 있는 바와 같이, 디코더(700)는 워터마크 검출기(715)와 역양자화기(720)의 지문 검출부 중 하나만을 포함할 필요가 있다. 역 양자화기(720)는 역 변환기(730)와 신호 통신가능하게 연결된다. 이 역 변환기(730)는 합산점(740)의 제 1 입력 단자와 신호 전달가능하게 연결되며, 이 합산점(740)의 출력은 비디오 디코더(700)의 출력을 제공한다. 이 합산점(740)의 출력은 기준 화상 저장수단(750)과 신호 전달가능하게 연결된다. 기준 화상 저장 수단(750)은 움직임 보상기(760)와 신호 전달가능하게 연결되며, 이 움직임 보상기(760)는 합삼점(740)의 제 2 입력 단자와 신호 전달가능하게 연결된다.
본 발명의 이들 및 다른 특징과 잇점은 본 명세서에 있는 가르침에 기초한 이 기술 분야에 통상의 기술을 가진 자라면 쉽게 이해할 수 있을 것이다. 본 발명의 원리는 하드웨어, 소프트웨어, 펌웨어, 특정 목적 프로세서, 또는 이들의 조합 의 여러 형태로 구현될 수 있다는 것을 확인할 수 있을 것이다.
가장 바람직하게는, 본 발명의 원리는 하드웨어와 소프트웨어의 조합으로 구현된다. 나아가, 이 소프트웨어는 바람직하게는 프로그램 저장 장치에 유형적으로 구현된 응용 프로그램으로 구현된다. 이 응용 프로그램은 임의의 적절한 구조를 포함하는 기계에 업로드되고 이 기계에 의해 실행될 수 있다. 바람직하게는, 이 기계는 하나 이상의 중앙 처리 장치("CPU"), 랜덤 액세스 메모리("RAM"), 및 입력/출력("I/O") 인터페이스와 같은 하드웨어를 구비하는 컴퓨터 플랫폼 상에 구현된다. 이 컴퓨터 플랫폼은 또한 운영 시스템 및 마이크로명령 코드를 포함할 수 있다. 본 명세서에 기술된 여러 프로세스 및 기능은, CPU에 의해 실행될 수 있는, 마이크로명령 코드의 일부 또는 응용 프로그램의 일부 또는 이들의 임의의 조합일 수 있다. 나아가, 추가적인 데이터 저장 장치와 프린트 장치와 같은 여러 가지 다른 주변 장치들이 컴퓨터 플랫폼에 연결될 수 있다.
첨부 도면에 도시된 구성 시스템의 성분과 방법 중 일부는 바람직하게는 소프트웨어로 구현되기 때문에, 시스템의 성분이나 프로세스의 기능 블록 사이의 실제 연결은 본 발명이 프로그래밍되는 방식에 따라 달라질 수 있다는 것을 더 이해할 수 있을 것이다. 본 명세서에 있는 가르침에 따라, 이 기술 분야에 통상의 지식을 가진 자라면 본 발명의 이들 구현이나 구성 및 이와 유사한 구현이나 구성을 생각할 수 있을 것이다.
예시적인 실시예가 첨부 도면을 참조하여 본 명세서에서 기술되었지만, 본 발명은 이들 특정 정확한 실시예로 제한되는 것은 아니며 또한 여러 가지 변경과 변형이 본 발명의 범위나 사상을 벗어남이 없이 이 기술 분야에 통상의 지식을 가진 자에 의해 이루어질 수 있다는 것을 이해할 수 있을 것이다. 모든 그러한 변경과 변형은 첨부된 청구항에 개시된 본 발명의 범위 내에 포함되는 것으로 의도되어 있다.
전술된 바와 같이, 본 발명은 비디오 인코더 및 디코더에서 워터마크를 삽입 및 검출하는 데 이용가능하다.

Claims (36)

  1. 디지털 지문(fingerprint)을 압축된 비디오 비트스트림에 매립하는 방법(200, 300, 400)으로서,
    유니크한 식별 코드를 비트 시퀀스로 표시하는 단계(230, 330, 430)와;
    상기 블록 내 코딩된 계수(coded coefficients)의 수의 패리티(parity)를 상기 유니크한 식별 코드의 비트 값에 일치시킴으로써 상기 유니크한 식별 코드의 각 비트를 상기 압축된 비디오 비트스트림의 대응하는 코딩된 블록에 매립(embed)하는 단계(234, 334, 434)
    를 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  2. 제 1 항에 있어서, 상기 유니크한 식별 코드의 한 비트를 나타내는 상기 코딩된 계수의 수는 각 블록에서 제로가 아닌, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  3. 제 1 항에 있어서, 상기 비트 시퀀스의 길이는 고정되어 있는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  4. 제 1 항에 있어서, 상기 유니크한 식별 코드는 비디오 인코더를 유니크하게 식별하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  5. 제 1 항에 있어서, 상기 블록에서 코딩된 계수의 수는 AC 계수를 나타내는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  6. 제 1 항에 있어서, 상기 블록에 대해 제로 아닌 계수의 짝수(even number)는 상기 유니크한 식별 코드의 0 비트에 대해 코딩되는 반면, 상기 블록에 대해 제로 아닌 계수의 홀수(odd number)는 상기 유니크한 식별 코드의 1 비트에 대해 코딩되는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  7. 제 1 항에 있어서, 상기 패리티를 일치시키는 단계는,
    상기 블록에 대해 제로 아닌 계수의 수의 패리티가 상기 유니크한 식별 코드의 비트의 패리티와 동일한지 여부를 체크하는 단계(232, 332, 432)와;
    상기 블록에 대해 제로 아닌 계수의 수의 패리티가 상기 유니크한 식별 코드의 비트의 패리티와 동일하지 않은 경우 상기 블록을 재양자화하는 단계(234, 334, 434)
    를 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  8. 제 7 항에 있어서, 상기 패리티를 일치시키는 단계는,
    상기 재양자화 블록에 대해 제로가 아닌 계수의 수의 패리티가 상기 유니크한 식별 코드의 비트의 패리티와 동일한지 여부를 체크하는 단계와;
    상기 블록에 대해 제로 아닌 계수의 수의 패리티가 상기 유니크한 식별 코드의 비트의 패리티와 동일하지 않은 경우 상기 블록을 더 재양자화하는 단계
    를 더 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  9. 제 7 항에 있어서, 상기 재양자화된 블록에 대해 제로 아닌 계수의 수는 제로가 아닌 것을 보장하는 단계(222,333,422)를 더 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  10. 제 1 항에 있어서, 상기 패리티를 일치시키는 단계는, 상기 유니크한 식별 코드의 비트를 일치시키기 위해 상기 블록 내 제로 아닌 계수의 수를 일(1)만큼 증가시키거나 감소시키는 것 중 하나를 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  11. 제 1 항에 있어서, 상기 패리티를 일치시키는 단계는, 단 하나의 제로 아닌 계수만을 초기에 구비하는 블록에서 상기 유니크한 식별 코드의 비트를 일치시키기 위해 상기 제로 아닌 계수의 수를 일(1)만큼 감소시키는 대신 일(1)만큼 증가시키는 단계를 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  12. 제 1 항에 있어서, 상기 패리티를 일치시키는 단계는, 초기에 제로 아닌 양자화 계수에 대응한 변환 계수를 제로로 재양자화함으로써 제로 아닌 계수의 수를 일(1)만큼 감소시키는 단계를 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  13. 제 12 항에 있어서, 제로로 재양자화될 상기 변환 계수는, 압축된 비디오 품질에 대한 영향을 저감하기 위해, 최저 값의 변환 계수와 최고 주파수 위치의 제로 아닌 계수 중 적어도 하나로부터 선택되는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  14. 제 10 항에 있어서, 상기 제로 아닌 계수의 수는 제로 값을 갖는 양자화 계수를 제로 아닌 값으로 재양자화함으로써 증가되는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  15. 제 14 항에 있어서, 상기 재양자화될 제로 값을 갖는 양자화 계수는, 맨 마지막의 제로 아닌 초기 양자화된 계수에 대한 스캔 순서에 있는 주파수 위치보다 하나 더 높은 위치에 있는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  16. 제 1 항에 있어서, 상기 패리티를 일치시키는 단계는, 제로 값을 갖는 계수를 일(1) 값을 갖는 계수로 대체하는 단계를 포함하며, 상기 대체될 제로 값을 갖는 계수는 맨 마지막의 제로 아닌 계수에 대한 스캔 순서에 있는 주파수 위치보다 하나 더 높은 위치에 있는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  17. 제 1 항에 있어서, 상기 유니크한 식별 코드의 비트가 매립될 압축된 비디오 비트스트림의 대응하는 코딩된 블록을 선택 패턴에 따라 선택하는 단계를 더 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  18. 제 17 항에 있어서, 상기 선택 패턴은 상기 유니크한 식별 코드의 비트 수 까지 모든 연속하는 블록을 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  19. 제 17 항에 있어서, 상기 선택 패턴은 상기 유니크한 식별 코드의 비트 수까지 초기에 적어도 하나의 제로 아닌 계수를 갖는 모든 블록을 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  20. 제 17 항에 있어서, 상기 선택 패턴은 상기 유니크한 식별 코드의 비트 수까지 매 N번째 블록을 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  21. 제 17 항에 있어서, 상기 선택 패턴은 상기 유니크한 식별 코드의 비트 수까 지 초기에 적어도 하나의 제로 아닌 계수를 갖는 매 N번째 블록을 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  22. 제 17 항에 있어서, 상기 선택 패턴은, 상기 압축된 비디오 비트스트림의 상기 코딩된 블록의 종단에 인접한 블록까지 초기에 적어도 하나의 제로 아닌 계수를 갖는 매 N 번째 블록과, 상기 유니크한 식별 코드의 비트 수까지 이후 모든 블록과, 상기 압축된 비디오 비트스트림의 마지막 블록을 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  23. 제 1 항에 있어서, 상기 디지털 지문의 다수의 복제본을 상기 압축된 비디오 비트스트림에 매립하는 단계를 더 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  24. 제 23 항에 있어서, 상기 디지털 지문을 새로이 복제한 디지털 지문은 매 화상 그룹이나 또는 독립적인 디코더 리프레쉬 기간마다 반복되는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  25. 제 1 항에 있어서, 상기 코딩된 블록은, 블록, 슬라이스, 매크로블록, 및 화상 중 적어도 하나인, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  26. 제 17 항에 있어서, 상기 전체 선택 패턴은 매 인트라 코딩된 화상 내에서 반복되는, 디지털 지문을 압축된 비디오 비트스트림에 매립하는 방법.
  27. 워터마크 비트(watermark bit)의 시퀀스로 비디오 데이터를 워터마크 표시하는 방법(200, 300, 400)으로서,
    복수의 비디오 블록 각각을 코딩하는 단계(214-218, 314-418, 414-418)와;
    각 블록 내 코딩된 계수의 수를 상기 지문 시퀀스 비트의 패리티와 일치하도록 함으로써 워터마크 비트의 시퀀스로부터 워터마크 비트를 상기 각 코딩된 블록에 매립하는 단계(234, 334,434)
    를 포함하는, 워터마크 비트의 시퀀스로 비디오 데이터를 워터마크 표시하는 방법.
  28. 제 27 항에 있어서, 코딩된 블록만이 사용되는, 워터마크 비트의 시퀀스로 비디오 데이터를 워터마크 표시하는 방법.
  29. 제 27 항에 있어서, 트레일링(trailing) 블록이 워터마크 비트를 매립하도록 하기 위해 재양자화하는 단계를 더 포함하는, 워터마크 비트의 시퀀스로 비디오 데이터를 워터마크 표시하는 방법.
  30. 제 27 항에 있어서, 최저 값을 갖는 변환 계수를 제로로 재양자화하는 단계 를 더 포함하는, 워터마크 비트의 시퀀스로 비디오 데이터를 워터마크 표시하는 방법.
  31. 제 27 항에 있어서, 한 블록에 한 비트를 매립할 필요가 있는 경우 블록이 코딩되게 하는 단계를 더 포함하는, 워터마크 비트의 시퀀스로 비디오 데이터를 워터마크 표시하는 방법.
  32. 제 27 항에 있어서, 상기 블록 내 코딩된 계수의 수의 패리티에 따라 코딩된 블록으로부터 워터마크 비트를 검색함으로써 상기 워터마크를 검출하는 단계를 더 포함하는, 워터마크 비트의 시퀀스로 비디오 데이터를 워터마크 표시하는 방법.
  33. 디지털 지문을 압축된 비디오 비트스트림에 매립하기 위한 비디오 인코더(600)로서,
    상기 비디오 비트스트림의 계수를 양자화하기 위한 양자화 유닛(630)과;
    상기 양자화 유닛과 신호 통신하며, 상기 블록 내 코딩된 계수의 수의 패리티에 따라 상기 디지털 지문의 비트를 상기 비디오 비트스트림의 블록에 매립하기 위한 매립 유닛(635)
    을 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하기 위한 비디오 인코더.
  34. 압축된 비디오 비트스크림에 매립된 워터마크를 구비하는 디지털 비디오 디스크로서,
    상기 워터마크는,
    복수의 비트로 표시된 유니크한 식별 코드와;
    상기 유니크한 식별 코드의 복수의 비트에 대응하는 복수의 코딩된 블록
    을 포함하며,
    상기 압축된 비디오 비트스트림의 각 대응하는 코딩된 블록은 상기 유니크한 식별 코드의 대응하는 비트 값과 동일한, 상기 블록 내 코딩된 계수의 수의 패리티를 구비하는,
    압축된 비디오 비트스크림에 매립된 워터마크를 구비하는 디지털 비디오 디스크.
  35. 압축된 비디오 비트스트림에 매립된 워터마크를 구비하는 디지털 비디오 신호로서,
    상기 워터마크는,
    복수의 비트로 표시된 유니크한 식별 코드와;
    상기 유니크한 식별 코드의 복수의 비트에 대응하는 복수의 코딩된 블록
    을 포함하며,
    상기 압축된 비디오 비트스트림의 각 대응하는 코딩된 블록은 상기 유니크한 식별 코드의 대응하는 비트 값과 동일한, 블록 내 코딩된 계수의 수의 패리티를 구 비하는,
    압축된 비디오 비트스트림에 매립된 워터마크를 구비하는 디지털 비디오 신호.
  36. 디지털 지문을 압축된 비디오 비트스트림에 매립하기 위한 비디오 인코더로서,
    유니크한 식별 코드를 비트 시퀀스로 표시하기 위한 수단과;
    상기 블록 내 코딩된 계수의 수의 패리티를 상기 유니크한 식별 코드의 비트 값에 일치시킴으로써 상기 유니크한 식별 코드의 각 비트를 상기 압축된 비디오 비트스트림의 대응하는 코딩된 블록에 매립하기 위한 수단
    을 포함하는, 디지털 지문을 압축된 비디오 비트스트림에 매립하기 위한 비디오 인코더.
KR1020057024754A 2003-06-25 2004-06-23 압축된 비디오 비트스트림에 워터마크를 삽입하기 위한인코딩 방법 및 장치 KR101100811B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US48230203P 2003-06-25 2003-06-25
US60/482,302 2003-06-25
PCT/US2004/020030 WO2005004494A1 (en) 2003-06-25 2004-06-23 Encoding method and apparatus for insertion of watermarks in a compressed video bitstream

Publications (2)

Publication Number Publication Date
KR20060027814A true KR20060027814A (ko) 2006-03-28
KR101100811B1 KR101100811B1 (ko) 2012-01-02

Family

ID=33563846

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020057024754A KR101100811B1 (ko) 2003-06-25 2004-06-23 압축된 비디오 비트스트림에 워터마크를 삽입하기 위한인코딩 방법 및 장치
KR1020057024612A KR101100843B1 (ko) 2003-06-25 2004-06-23 압축된 비디오 비트스트림에서 워터마크의 디코딩 방법 및검출 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020057024612A KR101100843B1 (ko) 2003-06-25 2004-06-23 압축된 비디오 비트스트림에서 워터마크의 디코딩 방법 및검출 장치

Country Status (11)

Country Link
US (1) US20070053438A1 (ko)
EP (2) EP1636995B1 (ko)
JP (2) JP4726140B2 (ko)
KR (2) KR101100811B1 (ko)
CN (2) CN1810038B (ko)
BR (2) BRPI0411667A (ko)
DE (2) DE602004027486D1 (ko)
ES (1) ES2330440T3 (ko)
MX (2) MXPA05013567A (ko)
MY (2) MY139799A (ko)
WO (2) WO2005004493A1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008147142A2 (en) * 2007-05-30 2008-12-04 Mmchips Co., Ltd. Method and system of inserting watermark for h.264/avc video stream
KR101145110B1 (ko) * 2011-04-21 2012-05-15 아스텔 주식회사 연성 워터마크 삽입/추출 장치 및 방법
KR101538837B1 (ko) * 2012-01-20 2015-07-22 블랙베리 리미티드 변환 유닛 내의 다수 부호 비트 은폐
US9299120B2 (en) 2007-03-23 2016-03-29 Thomson Licensing Llc Modifying a coded bitstream
US9794556B2 (en) 2010-02-17 2017-10-17 Electronics And Telecommunications Research Institute Method and device for simplifying encoding and decoding of ultra-high definition images
KR20190065994A (ko) * 2010-02-17 2019-06-12 한국전자통신연구원 초고해상도 영상을 부호화하는 장치 및 방법, 그리고 복호화 장치 및 방법

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1908290B1 (en) 2005-07-06 2015-06-10 Thomson Licensing Method and device for coding a video content comprising a sequence of pictures and a logo
JP2009508392A (ja) * 2005-09-09 2009-02-26 トムソン ライセンシング ビデオ透かし挿入のための係数選択
JP2009508391A (ja) * 2005-09-09 2009-02-26 トムソン ライセンシング ビデオ透かし検出
US8107669B2 (en) 2006-06-14 2012-01-31 Samsung Electronics Co., Ltd. Video watermarking apparatus in compression domain and method using the same
KR101213161B1 (ko) 2006-06-14 2012-12-17 삼성전자주식회사 압축영역에서의 비디오 워터마킹 장치 및 그 방법
US7653626B2 (en) * 2006-11-03 2010-01-26 Mediatek Inc. Method for detecting regularly appearing patterns
CN1988669B (zh) * 2006-11-21 2010-06-16 北京大学 流媒体监播中的数字标记构造及验证方法
WO2008084457A2 (en) * 2007-01-12 2008-07-17 Civolution Bv Video watermarking
CN101681499B (zh) * 2007-06-14 2013-04-24 汤姆逊许可证公司 修改经编码的比特流
WO2009045636A2 (en) 2007-09-28 2009-04-09 Dolby Laboratories Licensing Corporation Multimedia coding and decoding with additional information capability
CN101399962B (zh) * 2007-09-28 2010-12-01 北京视博数字电视科技有限公司 数字视频分发***及方法
CN101399961B (zh) * 2007-09-28 2010-10-20 北京视博数字电视科技有限公司 数字指纹嵌入方法、数字视频分发***及方法
US8483282B2 (en) * 2007-10-12 2013-07-09 Qualcomm, Incorporated Entropy coding of interleaved sub-blocks of a video block
US8565472B2 (en) * 2007-10-30 2013-10-22 General Instrument Corporation Method, device and system for dynamically embedding watermark information into multimedia content
US20090110059A1 (en) * 2007-10-31 2009-04-30 General Instrument Corporation Method and system for transmitting end-user access information for multimedia content
EP2319244A1 (en) * 2008-08-19 2011-05-11 Thomson Licensing Cabac/avc compliant watermarking of syntax elements in compressed video
CN102187673B (zh) * 2008-08-19 2014-07-30 汤姆森特许公司 亮度评估
US9042455B2 (en) 2008-08-19 2015-05-26 Thomson Licensing Propagation map
JP5373910B2 (ja) 2008-08-19 2013-12-18 トムソン ライセンシング Cabacストリームのコンプライアンス
CN102132564B (zh) * 2008-08-20 2013-09-11 汤姆森特许公司 用于压缩视频的水印制作的水印选取
US8340343B2 (en) * 2008-10-31 2012-12-25 General Instrument Corporation Adaptive video fingerprinting
JP5394212B2 (ja) * 2008-12-19 2014-01-22 トムソン ライセンシング データを挿入する方法、挿入されたデータを読み出す方法
JP5753200B2 (ja) 2010-02-09 2015-07-22 トムソン ライセンシングThomson Licensing 伝搬マップを使用する透かし検出
KR20120009618A (ko) * 2010-07-19 2012-02-02 에스케이 텔레콤주식회사 주파수변환단위 분할부호화 방법 및 장치와 이를 이용한 영상 부호화/복호화 방법 및 장치
CN101895766B (zh) * 2010-08-13 2012-03-14 北京算通科技发展股份有限公司 一种mpeg-2/h.264标准下视频流***台标字幕的压缩域局部处理算法
JP5174878B2 (ja) * 2010-10-13 2013-04-03 国立大学法人信州大学 秘匿情報の抽出装置および書き替え装置
CN101980542B (zh) * 2010-11-16 2012-08-22 上海交通大学 基于时序振动和纠错码的视频数字指纹嵌入及其检测方法
CN103748900B (zh) * 2011-02-04 2018-03-09 斯诺弗雷克解决方案公司 用于数字媒体的独特水印的方法及***
US9392301B2 (en) 2011-07-01 2016-07-12 Qualcomm Incorporated Context adaptive entropy coding for non-square blocks in video coding
JP5740239B2 (ja) * 2011-08-03 2015-06-24 日本放送協会 モード情報伝送置換装置、画像符号化装置、画像復号装置、及びこれらのプログラム
FR2982447A1 (fr) 2011-11-07 2013-05-10 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
FR2982446A1 (fr) * 2011-11-07 2013-05-10 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
KR101361524B1 (ko) * 2012-11-09 2014-02-25 주식회사 시공미디어 콘텐츠 자동 변환 처리를 통한 워터마크 삽입 장치 및 방법
KR101383639B1 (ko) 2013-11-07 2014-04-10 주식회사 알아이 이미지 블록 선택 기반의 데이터 은닉 장치 및 방법
US9946723B2 (en) * 2014-06-02 2018-04-17 Intel Corporation Data embedding in run length encoded streams
EP3433974A4 (en) * 2016-03-21 2020-04-08 Liveramp, Inc. DATA WATERMARK MARKING AND FINGERPRINT TAKING SYSTEM AND METHOD
CN106101100B (zh) * 2016-06-14 2019-08-02 南京邮电大学 一种基于隐写分析的视频内容监管***的实现方法
WO2018177522A1 (en) * 2017-03-29 2018-10-04 Fundació Per A La Universitat Oberta De Catalunya Video watermarking

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6345145B1 (en) * 1995-08-25 2002-02-05 Sony Corporation Signal recording/reproducing method and apparatus, signal record medium and signal transmission/reception method and apparatus
JP4064506B2 (ja) * 1997-09-17 2008-03-19 パイオニア株式会社 電子透かし重畳方法及び検出方法並びに装置
PT1080584E (pt) * 1998-05-20 2003-10-31 Macrovision Corp Metodo e instrumento para deteccao de marcas de agua para escalas especificas e para deslocamentos arbitrarios
TW395133B (en) * 1998-07-15 2000-06-21 Koninkl Philips Electronics Nv Detection of a watermark in a compressed video signal
JP2000050048A (ja) * 1998-07-29 2000-02-18 Konica Corp 画像処理装置
US6546113B1 (en) * 1999-03-02 2003-04-08 Leitch Technology International Inc. Method and apparatus for video watermarking
DE60034520T2 (de) * 1999-03-19 2007-12-27 Sony Corp. Vorrichtung und verfahren zur einbindung und vorrichtung und verfahren zur dekodierung von zusätzlichen informationen
EP1119827A1 (en) 1999-07-15 2001-08-01 Koninklijke Philips Electronics N.V. Embedding auxiliary data in an information signal
US6748362B1 (en) * 1999-09-03 2004-06-08 Thomas W. Meyer Process, system, and apparatus for embedding data in compressed audio, image video and other media files and the like
CA2400947A1 (en) * 2000-03-06 2001-09-13 Thomas W. Meyer Data embedding in digital telephone signals
JP3778765B2 (ja) * 2000-03-24 2006-05-24 三洋電機株式会社 窒化物系半導体素子およびその製造方法
JP2001319416A (ja) * 2000-05-12 2001-11-16 Pioneer Electronic Corp 情報検出装置
US6430301B1 (en) * 2000-08-30 2002-08-06 Verance Corporation Formation and analysis of signals with common and transaction watermarks
JP2002135713A (ja) * 2000-10-26 2002-05-10 Nec Corp 画像データ処理装置および画像データ処理方法
JP2002171494A (ja) * 2000-12-01 2002-06-14 Matsushita Electric Ind Co Ltd 電子透かし情報埋込方法及び装置
US6563937B1 (en) * 2001-11-28 2003-05-13 Sony Corporation Method and apparatus to detect watermark that are resistant to arbitrary deformations
US20050089189A1 (en) * 2001-12-05 2005-04-28 Langelaar Gerrit C. Embedding a watermark in an image signal
FR2846828B1 (fr) * 2002-10-31 2005-03-11 France Telecom Procede de tatouage d'un signal video, systeme et support de donnees pour la mise en oeuvre de ce procede, procede d'extraction du tatouage d'un signal video, systeme pour la mise en oeuvre de ce procede
FR2853792A1 (fr) * 2003-04-11 2004-10-15 France Telecom Procede de tatouage d'une sequence video a selection adaptative de la zone d'insertion du tatouage, procede de detection, dispositifs, support de donnees et programmes d'ordinateur correspondants
US7324662B2 (en) * 2004-05-21 2008-01-29 Nanyang Technological University Method, software, and device for hiding data in binary image, while preserving image quality

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9299120B2 (en) 2007-03-23 2016-03-29 Thomson Licensing Llc Modifying a coded bitstream
KR100873947B1 (ko) * 2007-05-30 2008-12-12 주식회사 엠엠칩스 H.264/avc 표준용 워터마크 삽입 방법 및 시스템
WO2008147142A3 (en) * 2007-05-30 2009-01-22 Mmchips Co Ltd Method and system of inserting watermark for h.264/avc video stream
WO2008147142A2 (en) * 2007-05-30 2008-12-04 Mmchips Co., Ltd. Method and system of inserting watermark for h.264/avc video stream
KR20200104843A (ko) * 2010-02-17 2020-09-04 한국전자통신연구원 초고해상도 영상을 부호화하는 장치 및 방법, 그리고 복호화 장치 및 방법
US9794556B2 (en) 2010-02-17 2017-10-17 Electronics And Telecommunications Research Institute Method and device for simplifying encoding and decoding of ultra-high definition images
KR20190065994A (ko) * 2010-02-17 2019-06-12 한국전자통신연구원 초고해상도 영상을 부호화하는 장치 및 방법, 그리고 복호화 장치 및 방법
KR20200104842A (ko) * 2010-02-17 2020-09-04 한국전자통신연구원 초고해상도 영상을 부호화하는 장치 및 방법, 그리고 복호화 장치 및 방법
KR20210058779A (ko) * 2010-02-17 2021-05-24 한국전자통신연구원 초고해상도 영상을 부호화하는 장치 및 방법, 그리고 복호화 장치 및 방법
KR20210059679A (ko) * 2010-02-17 2021-05-25 한국전자통신연구원 초고해상도 영상을 부호화하는 장치 및 방법, 그리고 복호화 장치 및 방법
KR20220074835A (ko) * 2010-02-17 2022-06-03 한국전자통신연구원 초고해상도 영상을 부호화하는 장치 및 방법, 그리고 복호화 장치 및 방법
US11770550B2 (en) 2010-12-07 2023-09-26 Electronics And Telecommunications Research Institute Method and device for simplifying the encoding and decoding of ultra-high definition images
KR101145110B1 (ko) * 2011-04-21 2012-05-15 아스텔 주식회사 연성 워터마크 삽입/추출 장치 및 방법
KR101538837B1 (ko) * 2012-01-20 2015-07-22 블랙베리 리미티드 변환 유닛 내의 다수 부호 비트 은폐

Also Published As

Publication number Publication date
CN1806442A (zh) 2006-07-19
JP4726140B2 (ja) 2011-07-20
JP2007525074A (ja) 2007-08-30
BRPI0411667A (pt) 2006-08-08
DE602004022548D1 (de) 2009-09-24
MY137898A (en) 2009-03-31
CN100496125C (zh) 2009-06-03
JP4726141B2 (ja) 2011-07-20
MXPA05013567A (es) 2006-08-18
WO2005004493A1 (en) 2005-01-13
KR20060027810A (ko) 2006-03-28
MY139799A (en) 2009-10-30
WO2005004494A1 (en) 2005-01-13
EP1636995A1 (en) 2006-03-22
CN1810038A (zh) 2006-07-26
EP1636994B1 (en) 2009-08-12
JP2007525073A (ja) 2007-08-30
DE602004027486D1 (de) 2010-07-15
KR101100843B1 (ko) 2012-01-02
US20070053438A1 (en) 2007-03-08
EP1636994A1 (en) 2006-03-22
ES2330440T3 (es) 2009-12-10
EP1636995B1 (en) 2010-06-02
MXPA05013572A (es) 2006-08-18
BRPI0411663A (pt) 2006-08-08
CN1810038B (zh) 2010-06-09
KR101100811B1 (ko) 2012-01-02

Similar Documents

Publication Publication Date Title
KR101100811B1 (ko) 압축된 비디오 비트스트림에 워터마크를 삽입하기 위한인코딩 방법 및 장치
EP0928110B1 (en) Image signal processing for electronic watermarking
KR101091752B1 (ko) 복호 장치 및 복호 방법
CN101087417B (zh) 图像编码装置
EP2311266A1 (en) Video coding with coding of the locations of significant coefficients in a block of coefficients
WO2002060182A1 (en) Watermarking a compressed information signal
RU2327302C2 (ru) Маркировка водяным знаком сигнала с переменным расходом битов
US20060257000A1 (en) Decoding method an apparatus for detection of watermarks in a compressed video bitsream
US20080232706A1 (en) Method and apparatus for encoding and decoding image using pixel-based context model
Zou et al. H. 264/AVC stream replacement technique for video watermarking
US20050025336A1 (en) Method and apparatus for compressed-domain watermarking
EP1459551A1 (en) Embedding a watermark in an image signal
Sakazawa et al. H. 264 native video watermarking method
Zou et al. H. 264/AVC substitution watermarking: a CAVLC example
JP2008502256A (ja) 移動されたオブジェクトにより引き起こされた電子透かし不規則性の補償
Langelaar et al. Video Watermarking
Moradi et al. Evaluation of robust interframe MPEG video watermarking
EP1356683A1 (en) Watermarking a compressed information signal

Legal Events

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

Payment date: 20141201

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151118

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161123

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20171117

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20191219

Year of fee payment: 9