KR20070000499A - 압축된 정보 신호를 워터마킹하는 방법 - Google Patents

압축된 정보 신호를 워터마킹하는 방법 Download PDF

Info

Publication number
KR20070000499A
KR20070000499A KR1020067022071A KR20067022071A KR20070000499A KR 20070000499 A KR20070000499 A KR 20070000499A KR 1020067022071 A KR1020067022071 A KR 1020067022071A KR 20067022071 A KR20067022071 A KR 20067022071A KR 20070000499 A KR20070000499 A KR 20070000499A
Authority
KR
South Korea
Prior art keywords
weak
watermark
strong
payload
information signal
Prior art date
Application number
KR1020067022071A
Other languages
English (en)
Other versions
KR20060136469A (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 KR20070000499A publication Critical patent/KR20070000499A/ko
Publication of KR20060136469A publication Critical patent/KR20060136469A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/913Television signal processing therefor for scrambling ; for copy protection
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

강력한 그리고 약한 워터마크 모두를, 제1 소정의 값을 갖는 제1 신호 샘플 및 상이한 값을 갖는 추가적인 신호 샘플을 포함하도록 압축되는 정보 신호에 삽입하는 방법이 개시되어 있는데, 강력한 워터마크를 삽입하는 것은, 워터마크 패턴에 따라 단일 샘플을 변경하는 단계로서, 이 경우 변경 동작은 제1 값을 가정해서 변경된 신호 샘플을 야기하는, 단일 샘플 변경 단계를 포함하고; 약한 워터마크를 삽입하는 것은, 강력한 워터마크를 삽입한 결과, 신호 내에 남아있는 '계수'의 수(R)를 카운트하는 단계; 및 강력한 워터마크를 삽입한 결과, 신호로부터 버려진 '계수'의 수(D)를 카운트하는 단계; 상기 남아 있는(R) 및 버려진(D) '계수'를 기초로 해서 약한 페이로드를 결정하는 단계를 포함한다.

Description

압축된 정보 신호를 워터마킹하는 방법{WATERMARKING A COMPRESSED INFORMATION SIGNAL}
본 발명은 압축되는 정보 신호에 약하고 강력한 워터마크를 삽입하는 방법에 대한 것이다. 이러한 압축된 정보 신호의 전형적인 예는 MPEG2 비디오 신호로서, 이 신호에서 비디오 이미지는 변환 계수에 의해 나타나는데, 상당한 수의 계수는 제1 값 0를 갖는다.
디지털 데이터를 보호하고자 하는 다수의 복제 방지 방식이 강력한 워터마크 및 약한 워터마크 모두를 사용한다. 강력한 워터마크는 일반적으로 디지털 컨텐츠가 저작권 또는 다른 보호를 받는다는 것을 나타내기 위해 사용된다. 약한 워터마크는 일반적으로 디지털 컨텐츠가 진정한 것인지 또는 변경된 것인지를 나타내기 위해 사용된다. 강력한 워터마크는 폭넓은 범위의 디지털 처리 동작을 견디기 위해 의도된다. 이러한 방식으로, 강력한 워터마크는 당면 데이터가 예컨대, 압축되거나, 재포맷팅되거나 또는 인터넷 또는 다른 데이터 매체를 통해 송신되어, 처리되는 경우조차도 여전히 존재할 것이다. 그러나, 약한 워터마크는 쉽게 '깨지도록' 의도된다. 이는 당면 데이터가 편집되거나 재포맷팅되어 변경되거나 변경된 경우, 약한 워터마크는 파괴되어, 데이터가 더 이상 진정하지 않다는 것을 나타낼 것이라는 것을 의미한다.
종래 기술의 애플리케이션에서, 안전한 디지털 영역 외부에서 처리된 멀티미디어 데이터가 안전한 디지털 영역에 재진입하는 것으로부터 예방된다는 것을 보 장하기 위한 시도로 강력하고 약한 워터마킹 알고리즘이 조합해서 사용된다. 이러한 애플리케이션에서, 강력한 워터마크가 트리거로서 작용한다. 트리거하는 강력한 워터마크의 검출시에, 검출 애플리케이션이 이후 약한 워터마크를 탐색한다. 약한 워터마크가 붕괴 또는 유실되는 경우, 당면 데이터가 처리되었다는 것을 애플리케이션이 안다. 이러한 처리는 DIVX를 사용하는 것 또는 (레거시 디바이스로 알려진)아날로그 시스템을 통해 레코딩하는 것을 포함할 수 있다. 검출 애플리케이션은 이후 처리된 데이터가 안전한 디지털 영역에 재진입하는 것을 허용할지 여부를 결정할 수 있다.
압축된 멀티미디어 데이터를 위해 두 개의 독립적인 워터마크를 구비하는데 있어 다수의 단점이 존재한다. 워터마킹은 소스 데이터의 품질을 저하시키는 경향이 있어, 두 개의 워터마크의 추가가 저하가 두 배가 되게 할 수 있다. 워터마크의 추가는 이미지, 소리 또는 다른 객체를 나타내는데 필요한 데이터의 양을 변경할 수 있다. 이러한 이유로, 워터마킹 프로세스는 비트-레이트 제어 메커니즘을 필요로 하는 경향이 있다. 두 개의 워터마크의 추가는 매우 복잡한 비트-레이트 제어 메커니즘을 필요로 할 수 있는데, 이는 연관 장비에 의해 필요한 처리 전력을 증가시킬 수 있으며, 이러한 장비의 복잡도 및 따라서 이 장비의 비용에 반드시 영향을 준다.
추가적인 문제점은 동기화이다. 예컨대, 강력한 워터마크가 존재하는 경우, 압축된 데이터 스트림 내에 약한 워터마크의 존재를 보장하는 것이 가능하지 않을 수 있다. 약한 워터막크가 유실되는 경우, 약한 워터마크는 해커에 의해 제거되기 때문에 이것이 있을 수 있거나, 이것이 스트림 특징의 결과일 수 있다. 예컨대, 약한 워터마크를 성공적으로 삽입하기 위해 너무 적은 계수 프레즌트(present)가 존재할 수 있다.
국제 특허 출원(WO 02/060182A1)이 워터마크를 MPEG 압축된 비디오 스트림에 삽입하기 위한 방법 및 장치를 개시한다. 워터마크(공간 잡음 패턴)는 가장 작은 양자화된 DCT 계수를 효과적으로 버림으로써 삽입된다. 버려진 계수는 후속적으로 남아있는 계수의 런(run)시에 머지(merge)된다. 계수가 버려질지 여부에 대한 결정이 미리계산된 워터마크 버퍼와, 소정의 크기를 갖는 DCT 계수 블록 내의 이미 버려진 계수의 수의 카운트를 기초로 해서 이루어진다. 이러한 종래 기술 문서는 단지 강력한 워터마크의 삽입을 개시한다.
도 1은 본 발명의 실시예에 따른 방법을 수행하기 위한 장치의 개략도.
도 2a 내지 도 2c 및 도 3a 내지 도 3g는 본 발명의 실시예의 동작을 예시하는 도면.
도 4는 워터마크-삽입 프로세스의 바람직한 실시예를 예시하는 도면.
본 발명의 실시예는 종래 기술의 워터마킹 시스템에서 경험한 위에서 언급된 문제점을 극복하거나, 적어도 개선하는 것을 목적으로 한다.
본 발명에 따르면, 강력한 그리고 약한 워터마크 모두를, 제1 소정의 값을 갖는 제1 신호 샘플 및 상이한 값을 갖는 추가적인 신호 샘플을 포함하도록 압축되는 정보 신호에 삽입하는 방법이 제공되는데, 강력한 워터마크를 삽입하는 것은 다음 단계:
- 워터마크 패턴에 따라 단일 샘플을 변경하는 단계로서, 이 경우 변경 동작은 제1 값을 가정해서 변경된 신호 샘플을 야기하는, 단일 샘플 변경 단계를 포함하고;
- 약한 워터마크를 삽입하는 것은, 강력한 워터마크 내의 상기 조정이 약한 워터마크를 나타내도록 강력한 워터마크를 변경하는 단계
를 포함한다.
바람직하게는, 강력한 워터마크를 조정하는 단계는 강력한 워터마크를 삽입한 결과, 신호 내에 남아있는 '계수'의 수(R)를 카운트하는 단계; 및 강력한 워터마크를 삽입한 결과, 신호로부터 버려진 '계수'의 수(D)를 카운트하는 단계를 포함한다.
바람직하게는, R=0이고 D=0인 경우, 어떠한 약한 페이로드도 존재하지 않는다.
바람직하게는, R=0이고 D≥1인 경우, 어떠한 약한 페이로드도 존재하지 않는다.
바람직하게는, R≥1, D=0이고 R의 패리티가 페이로드 비트와 매칭하는 경우, 유효한 약한 페이로드가 존재한다.
바람직하게는, R≥2, D=0이고 R의 패리티가 페이로드 비트와 매칭하지 않는 경우, 마지막 '계수'가 머지되고 유효한 약한 페이로드가 존재한다.
바람직하게는, R=1, D=0이고 R의 패리티가 페이로드 비트와 매칭하지 않는 경우, 마지막 '계수'가 머지되고 어떠한 약한 페이로드도 존재하지 않는다.
바람직하게는, R≥1, D≥1이고 R의 패리티가 페이로드 비트와 매칭하는 경우, 유효한 약한 페이로드가 존재한다.
바람직하게는, R≥1, D≥1이고 R의 패리티가 페이로드 비트와 매칭하지 않는 경우, 마지막 수행된 머지가 실행 해제되며 유효한 약한 페이로드가 존재한다.
바람직하게는, 약한 워터마크가 이전 데이터 프레임의 컨텐츠를 기초로 해서 계산된 해쉬값을 포함한다. 제1 프레임의 경우에, 0인 해쉬값이 가정된다.
본 발명의 제2 측면에 따르면, 추출된 약한 워터마크를 기대값과 비교함으로써 압축된 데이터 신호가 진정한 것인지를 결정하고, 기대값과 추출값이 상이한 경우 압축된 데이터 신호가 진정하지 않다고 결정하는 방법이 제공된다.
바람직하게는, 기대값은 이전 데이터 프레임의 해쉬값과 동일하다.
바람직하게는, 본 발명의 실시예에 따라 방법을 수행하도록 배열된 장치가 제공된다.
본 발명의 실시예는 유리하게는, 종래 기술의 워터마킹 시스템에 공통인 초과 데이터 저하 및 재동기화의 문제를 경험하지 않고도, 강력한 그리고 약한 워터마크 모두가 압축된 데이터 신호에 삽입될 수 있게 하는 워터마킹 시스템을 제공한다.
본 발명의 더 나은 이해를 위해, 그리고 본 발명이 어떻게 수행되는지를 이해하기 위해, 본 발명이 첨부 도면을 참조해서, 단지 예를 통해 설명될 것이다.
본 발명의 실시예는 위에서 언급된, 국제 특허 출원(WO 02/060182A1)에 개시된 본 발명의 일정 특징을 사용한다. 이로써, 이 문서의 컨텐츠는 그 전체가 참고문헌으로 본 명세서와 병합된다. 본 발명의 실시예를 이해하는 것이 위에서 언급된 문서의 일정 특징을 연구함으로써 증가될 수 있다. 특히, 이 문서는 강력한 워터마크를 삽입하기 위해 압축된 MPEG 데이터에 사용될 수 있는 알고리즘을 개시한다.
도 1은 위에서 언급된 문서에 따라 강력한 워터마크를 삽입하는 방법을 수행하는 장치의 개략적인 도면을 도시한다. 이 장치는 파싱 유닛(110), VLC 처리 유닛(120), 출력 스테이지(130), 및 워터마크 버퍼(140)를 포함한다. 이 장치의 동작은 도 2a 내지 도 2c 및 도 3a 내지 도 3g를 참조해서 더 설명될 것이다.
이 장치는 비디오 이미지 시퀀스를 나타내는 MPEG 요소적인 비디오 스트림(MPin)을 수신한다. 하나의 이러한 비디오 이미지가 예시적인 예로서 도 2a에 도시되어 있다. 비디오 이미지가 8x8 픽셀 블록으로 분할되는데, 이 블록 중 하나가 도 2a에 201로 나타난다. 픽셀 블록이 8x8 DCT(이산 코사인 변환) 계수의 각 블록으로 나타난다. 이러한 DCT 블록의 상위 왼쪽 변환 계수가 대응 픽셀 블록의 평균 휘도를 나타내며 DC 계수로서 공통적으로 언급된다. 나머지 계수는 공간 주파수를 나타내며 AC 계수로서 언급된다. 상위 왼쪽 AC 계수는 이미지의 거친 세부사항을 나타내며, 하위 오른쪽 계수는 미세한 세부사항을 나타낸다. AC 계수는 양자화된다. 양자화 프로세스는 DCT 블록의 다수의 AC 계수가 값 0를 가정하게 한다. 도 3a는 도 2a의 픽셀 블록에 대응하는, DCT 블록(300)의 전형적인 예를 도시한다.
DCT 블록의 계수는 지그-재그 패턴(도 3a의 301)에 따라 순차적으로 스캐닝되고 가변 길이 인코딩된다. 가변 길이 인코딩 방식은 허프만 코딩과 런-길이 코딩의 조합이다. 더 구체적으로, 0 AC 계수와 후속적인 비-0 AC 계수의 각각의 런이 신호 가변 길이 코드 워드로 인코딩되는 런-레벨 쌍을 구성한다. 도 3b는 DCT 블록(300)의 런-레벨 쌍을 도시한다. 블록 코드의 종단(EOB)이 DCT 블록 내의 추가적인 비-0 계수의 부재를 나타낸다. 도 3c는 장치에 의해 수신된 바와 같은 DCT 블록(300)을 나타내는 가변 길이 코드 워드 시리즈를 도시한다.
MPEG2 요소적인 비디오 스트림에서, 네 개의 이러한 DCT 휘도 블록 및 두 개의 DCT 색차 블록이 매크로 블록을 구성하며, 다수의 매크로 블록이 슬라이스를 구성하며, 다수의 슬라이스가 화상(필드 또는 프레임)을 구성하고 화상 시리즈가 비디오 시퀀스를 구성한다. 일부 화상은 자율적으로 인코딩되고(I-화상), 나머지 화상은 움직임 보상을 이용해 예측적으로 코딩된다(P-화상 및 B-화상). 후자의 경우에, DCT 계수는 픽셀 그 자체보다는, 현재 화상의 픽셀과 기준 화상의 픽셀 사이의 차이를 나타낸다. MPEG2 요소적인 비디오 스트림(MPin)이 파싱 유닛(110)에 사용된다. 이 파싱 유닛은 MPEG 비트-스트림을 부분적으로 해석하고 스트림을 휘도 DCT 계수(이후: VLC)를 나타내는 가변 길이 코드 워드 및 다른 MPEG 코드로 분할한다. 이 유닛은 또한 블록의 좌표, 코딩 유형(필드 또는 프레임), 스캔 유형(지그-재그 또는 대체의 것)과 같은 정보를 모은다. VLC 및 연관된 정보가 VLC 처리 유닛(120)에 제공된다. 나머지 MPEG 코드는 출력 스테이지(130)에 직접 사용된다.
삽입될 강력한 워터마크는 공간 영역 내의 의사 임의 잡음 시퀀스이다. 장치의 이 실시예에서, 128x128의 기본적인 워터마크 패턴이 이미지의 범위에 걸쳐 "타일화된다". 이 동작은 도 2b에 예시되어 있다. 128x128의 기본적인 의사 임의 워터마크 패턴이 본 명세서에서 더 나은 시각화를 위해 심볼(W)로 나타난다. 기본적인 워터마크의 공간 픽셀값이 MPEG 스트림 내의 비디오 컨텐츠와 동일한 표현으로 변환된다. 이를 위해, 128x128의 기본적인 워터마크 패턴이 8x8 블록으로 분할되는데, 이 블록 중 하나는 도 2b의 202로 나타난다. 블록이 이산 코사인 변환되고 양자화된다. 변환 및 양자화 동작이 오직 한 번 행해질 필요가 있다는 것을 주목하라. 계산된 바와 같은 DCT 계수는 장치의 128x128의 워터마크 블록(140)에 저장된다. 워터마크 버퍼(140)가 VLC 처리 유닛(120)에 연결되는데, 이 유닛에서 강력한 워터마크의 실질적인 삽입이 발생한다. VLC 처리 유닛이 비디오 이미지를 나타내는 선택된 가변 길이 코드를 런-레벨 쌍으로 디코딩하고(121), 런-레벨 쌍 시리즈를 2차원의 8x8 DCT 계수 어레이로 변환한다(122). 변경 단계(123)에서, 각각의 비디오 DCT 블록에 공간적으로 대응하는 워터마크 DCT 블록을 추가함으로써, 강력한 워터마크가 삽입된다. 도 2b 내의 워터마크 블록(202)을 나타내는 DCT 블록이 이에 따라, 도 2a내의 이미지 블록(201)을 나타내는 DCT 블록에 추가된다. 그러나, 위에서 언급된 개시물의 바람직한 방법에 따라, 이 동작에 의해 0 계수로 변하는 DCT 계수만이 워터마크 목적을 위해 선택된다. 예컨대, 도 3a에서 값 2를 갖는 AC 계수는 대응하는 워터마크 계수가 값 -2를 갖는 경우에만 변경될 것이다. 수학적인 표시로:
if cin(i,j) + w(i,j) = 0
then cout(i,j) = 0
else cout(i,j) = cin(i,j)
여기서, cin은 비디오 DCT 블록의 계수, W는 공간적으로 대응하는 워터마크 DCT 블록의 계수, 그리고 cout은 비디오 DCT 블록에 대한 워터마크의 계수이다.
DCT 블록 내의 0 계수의 수가 이 동작에 의해 증가되어, 워터마크된 비디오 DCT 블록이 원래의 DCT 블록보다 더 효율적으로 인코딩될 수 있다는 것이 인식될 것이다. 이는 특히 MPEG 압축된 신호에 대한 경우인데, 그 이유는 새로운 0 계수가 또 하나의 런-레벨 쌍(런-머지)의 런시에 포함될 것이다. 재인코딩이 가변 길이 인코더(124)에 의해 수행된다. 워터마크 블록이 출력 스테이지(130)에 사용되는데, 이 스테이지는 파싱 유닛(110)에 의해 제공된 MPEG 코드를 복사함으로써 그리고 VLC 처리 유닛(120)에 의해 제공된 재생성된 VLC를 삽입함으로써 MPEG 스트림을 재생성한다. 나아가, 출력 스테이지(130)는 원래의 비디오 비트 레이트와 동일한 출력 비트-레이트를 만들기 위해 스터핑(stuffing) 비트를 삽입할 수 있다.
위에서 언급된 문서에 개시된 특별한 변경예에서, 워터마크 패턴의 DCT 계수의 부호만이 워터마크 버퍼(140)에 저장되여, 버퍼는 +1 및 -1 값만을 저장한다. 이는 버퍼의 메모리 용량을 계수당 1비트로 감소시킨다(총 128x128 비트). 더욱이, 위에서 언급된 문서는 강력한 워터마크 삽입을 최상위 DCT 계수에만 사용하는 것이 충분하다는 것을 개시한다(최상위 계수는 지그-재그 스캔시에 제일 먼저 발생하는 계수이다). 이는 메모리 요건을 훨씬 더 감소시킨다. 도 3d는 도 2b 내의 공간 워터마크 블록(202)에 대응하는 워터마크 DCT 블록(302)의 전형적인 예를 도시한다.
도 3e는 워터마크 DCT 블록(302)을 비디오 DCT 블록(300)에 추가함으로써 획득된 워터마크된 비디오 DCT 블록(303)을 도시한다. 이 특정 예에서, 비-0 계수 중 하나(도 3a 내의 값 -1을 갖는 계수)만이 0 계수로 변하는데, 그 이유는 공간적으로 대응하는 워터마크 계수가 값 +1을 갖기 때문이다. 도 3f는 워터마크된 DCT 블록의 런-레벨 쌍을 도시한다. 이전의 런-레벨 쌍인 (1, -1) 및 (0, 2)이 하나의 런-레벨 쌍(2, 2)로 대체되었다는 것을 주목하라. 도 3g는 대응하는 출력 비트-스트림을 도시한다. 런 머지 동작이 본 특별한 예에서 1 비트를 절약하는 것으로 여겨진다.
도 2c는 장치의 출력 신호(MPout)로 나타난 워터마크된 이미지를 도시한다. 본 도면에서 203으로 나타난 픽셀 블록은 도 3e 내의 워터마크된 비디오 DCT 블록(303)에 대응한다. 도 2c는 강력한 워터마크 삽입의 상이한 레벨을 원래의 이미지에 걸쳐 타일화되어 있는 W 글자의 상이한 포맷으로 나타낸다.
위에서 언급된 문서는 또한 다양한 바람직한 효과를 달성하기 위해 개시된 장치에 대해 이루어질 수 있는 다수의 변형예를 개시한다. 하나의 특정 변형예는 소정의 음의 DCT 계수 범위(예컨대, -2 및 -1)가 워터마크 계수 값 +1에 의해 0으로 변하는 반면에, 양의 DCT 계수 범위(예컨대, +2 및 +1)는 워터마크 계수 값 -1에 의해 0으로 변하는 것이다. 이러한 방식으로, 시스템 설계자는 특별한 요건에 따라 시스템과의 다양한 절충을 이루기 위해 선택할 수 있다.
나아가, MPEG2 요소적인 비디오 스트림 데이터는 필드 코딩되거나 프레임 코딩될 수 있다. 위에서 언급된 문서는 워터마크 버퍼(150)가 필드 코딩된 블록을 위한 하나의 패턴과 프레임 코딩된 블록을 위한 하나의 패턴인, 두 개의 상이한 워터마크 패턴을 포함하도록 배열될 수 있다는 것을 기술한다. 강력한 워터마크를 삽입하기 위해 사용된 패턴은 이때 입력 비디오 스트림 내에 포함된 적절한 식별 신호에 따라 선택된다.
강력한 워터마크를 MPEG 인코딩된 신호에 삽입하기 위해 위에서 설명된 장치에서, 런-레벨 쌍의 "레벨" 부분이 변한다. 그러나, 레벨은 AC 계수의 실질적인 값이 아니라, 이 계수의 양자화된 버전이다. 예컨대, 도 3b 내의 런-레벨 쌍(1, -1)은 실제로 계수 X=-104를 나타낼 수 있다. 또 하나의 블록에서, 동일쌍(1, -1)이 양자화기 스텝 크기에 따라, 계수 X=-6을 나타낼 수 있다. AC 계수를 -104에서 0으로 변화시키는 것의 효과는 일반적으로 동일한 AC 계수를 -6에서 0으로 변화시키는 것보다는, 삽입된 강력한 워터마크의 지각력에 대해 상이한 효과를 갖는다는 것은 두말할 필요가 없다.
이에 따라 AC 계수의 가시도에 대한 효과가 감소되도록 강력한 워터마크 삽입 프로세스를 제어할 필요가 있을 수 있다. 이를 위해, 종래 기술의 삽입 방법의 추가 변형예는 양자화기 스텝 크기에 따라 변경되는 계수의 수 및/또는 위치를 제어하는 단계를 포함한다.
MPEG 디코더에서, 수신 레벨(X(n))을 양자화기 스텝 크기와 곱해서 역 양자화가 달성된다. 양자화기 스텝 크기는 블록 내에서 스텝 크기를 변경시키는 가중화 매트릭스(W(n)), 및 스텝 크기를 (매크로-) 블록에서 (매크로-) 블록으로 변경시키는 스케일 인수(QS)에 의해 제어된다. 다음 방정식은 디코딩된 레벨(X(n))로부터 AC 계수(X(n))를 재구성하기 위한 MPEG 계산식을 나타낸다:
X(n) = x(n) x W(n) x QS
여기서, n은 지그-재그 스캔 순서 인덱스를 나타낸다.
변경되도록 허용되는 다수의 계수에 대한 상한을 생성하기 위한 다양한 방식 존재한다. 일 실시예에서, 레벨 x(n)은 단지 대응하는 양자화 스텝 크기:
Q(n) = W(n) x QS
이 미리결정된 임계보다 더 작은 경우에 변경될 수 있다. 상이한 임계가 이에 따라 DCT 블록에서 상이한 위치에 대해 (즉, 상이한 인덱스 n에 대해)사용될 수 있다.
위에서 설명된 종래 기술의 문서의 또 하나의 변형예에서, 블록 내에서 변경되도록 허용되는 계수의 최대수(N)는 QS가 증가함에 따라 N이 감소하도록 양자화기 스케일 인수(QS)의 함수가 된다. 본 기술의 이용가능성은 DCT 블록이 얼마나 강하게 양자화되었는지를 스케일 인수가 실제로 나타내는 것을 구현하는 경우에 쉽게 이해될 수 있다. 스케일 인수가 더 클수록, 즉 양자화 스텝 크기가 더 클수록, 더 작은 계수가 지각불가능한 효과를 제공하기 위해 변할 수 있다. 이러한 함수의 예는:
로서, 여기서 c는 소정의 상수값이다.
양자화기 스케일 인수(QS)가 파라미터(quantizer_scale_code) 및 파라미터(Q_scale_type)의 조합으로서 MPEG 비트-스트림 내에 수용된다. 파라미터(quantizer_scale_code)는 5비트 코드이다. 파라미터(Q_scale_type)는 상기 코드가 2와 62 사이의 선형 QS 값 범위, 또는 1과 112 사이의 지수값 범위를 나타내는 경우를 나타낸다. 양쪽 모든 경우에서, 이 코드는 스텝 크기를 나타낸다. 이로써, 위에서 언급된 함수에서 QS라는 용어는 파라미터(quantizer_scale_code)로 또한 대체될 수도 있다.
종래 기술의 문서(WO 02/060182)의 위 설명은 소위 런-머지 알고리즘의 사용을 통한 강력한 워터마크의 삽입에 대한 인식 및 이해를 제공하기 위해 포함되었다. 본 발명의 실시예는 본 문서에 개시된 방법 및 장치의 변경 및 개선을 기초로 한다.
본 발명의 실시예는 강력한 그리고 약한 워터마크를 하나의 처리 단계에 동시에 삽입할 수 있다. 위에서 상세하게 설명된, 강력한 워터마크를 삽입하는 종래 기술의 방법은 1과 동일한 절대값을 갖는 계수의 수를 선택적으로 감소시킴으로써 효과적으로 동작한다. 본 발명의 실시예는 남아있는 계수를 특별한 방식으로 해석함으로써 제2 약한 워터마크를 삽입하기 위해 본 기술을 사용한다.
본 발명의 특별한 실시예에서, 각각의 데이터 프레임이 예컨대 32 부분으로 분할되는데, 각각의 부분은 한 개의 약한 페이로드 비트를 보유한다. (D1 PAL 시스템에서, 이는 각각의 부분이 약 200개의 8x8 블록을 포함한다는 것을 의미한다). 약한 워터마크를 삽입하기 위해 사용된 알고리즘은 삽입되어야 할 약한 페이로드 데이터에 따라, 런-머지 처리 스테이지 동안에 짝수 또는 홀수의 계수의 존재를 강제하도록 동작할 수 있다. 계수의 수가 짝수인 경우, 이는 약한 페이로드 비트가 0이라는 것을 의미한다. 계수의 수가 홀수인 경우, 이는 약한 페이로드 비트가 1이라는 것을 의미한다. 남아있는 부분이 전혀 존재하지 않는 경우, 그 특별한 부분이 약한 페이로드 비트를 포함하지 않는다.
약한 워터마크를 삽입하는 이 방법이 해커 또는 데이터를 변형하고자 하는 다른 사람에 의해 쉽게 회피되지 않는다는 것을 주목하는 것이 중요하다. 예컨대, 1인 모든 계수를 제거하는 것이 가능하지 않다. 이는 절대값 1을 갖는 계수가 MPEG 데이터 스트림에서 최대 빈도로 발생하는 계수이기 때문이다. 이 계수 모두를 제거하기 위한 임의의 시도는 데이터 스트림을 쓸모없게 할 것이다.
본 발명의 실시예는 이전의 워터마크된 프레임의, 알려진 기술에 의해 계산된, 해쉬값을 현재의 워터마크된 프레임에 삽입해서, 해쉬값이 약한 페이로드로서 작용한다. 32비트 해쉬값이 특별한 워터마크된 프레임을 위한 DCT 계수를 나타내는 VLC를 통해 계산된다. 이 32비트값의 제1 비트는 이후 다음 프레임의 약한 페이로드에 저장된다. 예컨대, 고도로 압축된 스트림을 갖는 일정한 환경에서, 모든 32비트를 저장하는 것이 가능하지 않을 수 있다. 이 경우, 워터마크된 데이터에 대한 변화를 검출하기 위해 해쉬값의 부분만을 저장하는 것으로 충분하다. 바로 그 제1 프레임에 선행하는 어떠한 프레임도 존재하지 않기 때문에, 바로 그 제1 프레임의 약한 페이로드는 0으로 설정된다.
본 발명의 실시예에 따라 방법을 수행하기에 적절한 장치의 개략적인 표현이 도 1에 개시되어 있다. 이 장치는 종래 기술에 대해 이전에 설명된 장치와 형태가 동일하다. 차이는 워터마크 버퍼(140)의 성질 및 변경 블록(123)에 있다. 블록(123)은 특별한 런-머지 알고리즘에 따라 강력한 워터마크를 삽입하기 위해 종래 기술의 장치에서 동작한다. 본 발명의 실시예에서, 런-머지 알고리즘은 강력한 워터마크뿐만 아니라 약한 워터마크를 삽입하기 위해 적응된다.
각각의 수신된 데이터 프레임이 32 부분으로 분할된다. 이들 32 부분 각각은 이후 종래 기술의 런-머지 알고리즘을 사용해서 강력한 워터마크로 워터마크된다. 삽입기(123)는 남아있는 계수(R), 및 버려진 계수(D)의 수에 대한 카운트를 수행한다. 이 두 개의 카운트가 약한 워터마크 페이로드의 성질을 제어한다. 또한, 삽입기(123)는 수행된 마지막 머지를 실행 해제할 수 있으며 DCT 변환된 워터마크된 패턴 내의 대응하는 계수와 무관한 마지막 임의의 계수를 머지할 수 있다. 각각의 부분의 종단에서(예컨대, 200개의 8x8 블록 후에), 삽입기(123)는 아래 표에 나타나는 바와 같은 다음 동작을 수행한다.
R D 삽입기 동작 결과적인 약한 페이로드
R=0 D=0 없음 페이로드 없음
R=0 D≥1 페이로드 없음
R≥1 D=0
패리티(R)가 페이로드 비트와 매칭하지 않고 R≥2인 경우, 마지막 '계수' 머지
패리티(R)가 페이로드 비트와 매칭하지 않고 R=1인 경우, 마지막 '계수' 머지
R≥1 D≥1 패리티(R)가 페이로드 비트와 매칭하는 경우, 어떠한 동작도 없음 유효한 페이로드
패리티(R)가 페이로드 비트와 매칭하지 않는 경우, 마지막 머지 실행 해제 유효한 페이로드
예컨대, 삽입기가 하나 이상의 남아있는 '부분'(R)을 발견하는 경우 및 버려진 부분(D)을 전혀 발견하지 못하는 경우, R의 패리티를 페이로드 비트와 비교하는 추가적인 체크가 수행된다. 위 표는 R 값과 패리티 비교에 따라 세 개의 가능한 결과를 나타낸다.
강력한 및 약한 워터마크가 삽입된 후에 이들을 검출하기 위해, 상이한 기술이 사용될 수 있다. 강력한 워터마크는 상관 검출기에 의해 기저대역 영역에서 검출될 수 있다. 이미 기술된 바와 같이, 강력한 워터마크는 다양한 상이한 처리 단계를 견디도록 의도되며 이 워터마크의 검출은 검출기가 약한 워터마크를 탐색하기 위한 트리거로서 작용할 것이다. 약한 워터마크는 단지 디지털 압축된 영역에서 검출될 수 있다.
최대 32 비트의 약한 페이로드는 부분(200개의 8x8 블록)당 1인 절대값을 갖는 계수의 수를 카운트함으로써 추출될 수 있다. 이 수의 패리티가 약한 페이로드 비트를 결정한다. 계수의 수가 0인 경우, 대응하는 200개의 블록에 페이로드가 존재하지 않는다. 약한 페이로드가 압축된 데이터로부터 추출되는 경우, 프레임의 해쉬값이 DCT 계수로부터 계산된다. 프레임의 종단에서, 이전에 계산된 해쉬값이 추출된 페이로드와 비교된다. 값이 매칭하는 경우, 이는 약한 워터마크가 그대로라는 것을 의미하며, 워터마크된 데이터가 진정하다고 또는 변형되지 않았다고 간주될 수 있다. 그러나, 매칭이 존재하지 않는 경우, 검출기는 약한 페이로드가 깨졌다(이는 원래의 워터마크가 삽입된 후에 약한 워터마크된 데이터가 일정 방식으로 처리되었다는 것을 의미함)고 발신할 수 있다. 일정한 다른 애플리케이션이 이후 진정하지 않을 수 있는 이 데이터를 처리하는 방법을 결정하기 위해 이 정보를 사용할 수 있다.
도 4는 블록(123)에서 발생하는 변경된 프로세스를 예시한다. 워터마크 프로세스는 400에서 시작한다. 강력한 워터마크가 401에서 설명된 바와 같이 삽입된다. 이 프로세스를 뒤따르는 남아있는 '계수'의 수(R)가 단계(402)에서 카운트된다. 버려진 '계수'의 수(D)가 단계(403)에서 카운트된다.
그렇게 카운트된 R 및 D 값을 사용해서, 약한 페이로드가 이전 데이터 프레임의 해쉬값(405)을 사용해서 단계(404)에서 삽입된다.
워터마크 프로세스는 단계(406)에서 종료하나, 물론 필요한 경우 여러번 반복될 수 있다.
바람직한 실시예를 특별히 참조해서 설명되었으나, 당업자는 삽입된 강력한 워터마크가 약한 워터마크를 나타내도록 변경되게 하는 다른 방식이 채택될 수 있으며, 본 명세서에서 개시된 방식은 단지 예시적인 것이라는 점을 인식할 것이다.
본 출원과 연계해서 본 명세서와 동시에 또는 이전에 출원된, 그리고 본 명세서와 함께 공중 열람에 오픈된, 모든 페이퍼 및 문서에 주목해야 하며, 모든 이러한 페이퍼 및 문서의 컨텐츠가 참고문헌으로 본 명세서에 병합된다.
(임의의 첨부된 청구항, 요약서 및 도면을 포함하는) 본 명세서에 개시된 모든 특징, 및/또는 그렇게 개시된 임의의 방법 또는 프로세스의 모든 단계는 이러한 특징 및/또는 단계의 적어도 일부가 상호 배타적인 경우를 제외한, 임의의 조합에 의해 조합될 수 있다.
(임의의 첨부된 청구항, 요약서 및 도면을 포함하는) 본 명세서에 개시된 각각의 특징은, 명시적으로 이와 다르게 기술되지 않는 경우, 동일한, 등가의 또는 유사한 목적을 제공하는 대안적인 특징에 의해 대체될 수 있다. 따라서, 명시적으로 이와 다르게 기술되지 않는 경우, 개시된 각각의 특징은 등가의 또는 유사한 특징의 일반적인 시리즈의 단지 하나의 예이다.
본 발명은 앞의 실시예(들)의 세부사항으로 제한되지 않는다. 본 발명은 (임의의 첨부된 청구항, 요약서 및 도면을 포함하는) 본 명세서에 개시된 특징 중 임의의 신규한 특징 또는 임의의 신규한 조합까지, 또는 그렇게 개시된 임의의 방법 또는 프로세스의 단계 중 임의의 신규한 단계 또는 임의의 신규한 조합까지 확장한다.
본 발명은 압축되는 정보 신호에 약하고 강력한 워터마크를 삽입하는 방법에 이용가능하다.

Claims (14)

  1. 강력한 그리고 약한 워터마크 모두를, 제1 소정의 값을 갖는 제1 신호 샘플 및 상이한 값을 갖는 추가적인 신호 샘플을 포함하도록 압축되는 정보 신호에 삽입하는 방법으로서, 강력한 워터마크를 삽입하는 것은,
    - 워터마크 패턴에 따라 단일 샘플을 변경하는 단계로서, 이 경우 변경 동작은 제1 값을 가정해서 변경된 신호 샘플을 야기하는, 단일 샘플 변경 단계를 포함하고;
    - 약한 워터마크를 삽입하는 것은, 강력한 워터마크 내의 상기 조정이 약한 워터마크를 나타내도록 강력한 워터마크를 변경하는 단계
    를 포함하는, 강력한 그리고 약한 워터마크 모두를 정보 신호에 삽입하는 방법.
  2. 제1 항에 있어서,
    약한 워터마크를 삽입하기 위해 강력한 워터마크를 조정하는 단계는, 강력한 워터마크를 삽입한 결과, 신호 내에 남아있는 '계수'의 수(R)를 카운트하는 단계; 및 강력한 워터마크를 삽입한 결과, 신호로부터 버려진 '계수'의 수(D)를 카운트하는 단계를 포함하는, 강력한 그리고 약한 워터마크 모두를 정보 신호에 삽입하는 방법.
  3. 제2 항에 있어서,
    R=0이고 D=0인 경우, 어떠한 약한 페이로드도 존재하지 않는, 강력한 그리고 약한 워터마크 모두를 정보 신호에 삽입하는 방법.
  4. 제2 항 또는 제3 항에 있어서,
    R=0이고 D≥1인 경우, 어떠한 약한 페이로드도 존재하지 않는, 강력한 그리고 약한 워터마크 모두를 정보 신호에 삽입하는 방법.
  5. 제2 항 내지 제4 항 중 어느 한 항에 있어서,
    R≥1, D=0이고 R의 패리티가 페이로드 비트와 매칭하는 경우, 유효한 약한 페이로드가 존재하는, 강력한 그리고 약한 워터마크 모두를 정보 신호에 삽입하는 방법.
  6. 제2 항 내지 제5 항 중 어느 한 항에 있어서,
    R≥2, D=0이고 R의 패리티가 페이로드 비트와 매칭하지 않는 경우, 마지막 '계수'가 머지되고 유효한 약한 페이로드가 존재하는, 강력한 그리고 약한 워터마크 모두를 정보 신호에 삽입하는 방법.
  7. 제2 항 내지 제6 항 중 어느 한 항에 있어서,
    R=1, D=0이고 R의 패리티가 페이로드 비트와 매칭하지 않는 경우, 마지막 '계수'가 머지되고 어떠한 약한 페이로드도 존재하지 않는, 강력한 그리고 약한 워터마크 모두를 정보 신호에 삽입하는 방법.
  8. 제2 항 내지 제7 항 중 어느 한 항에 있어서,
    R≥1, D≥1이고 R의 패리티가 페이로드 비트와 매칭하는 경우, 유효한 약한 페이로드가 존재하는, 강력한 그리고 약한 워터마크 모두를 정보 신호에 삽입하는 방법.
  9. 제2 항 내지 제8 항 중 어느 한 항에 있어서,
    R≥1, D≥1이고 R의 패리티가 페이로드 비트와 매칭하지 않는 경우, 마지막 수행된 머지가 실행 해제되며 유효한 약한 페이로드가 존재하는, 강력한 그리고 약한 워터마크 모두를 정보 신호에 삽입하는 방법.
  10. 제1 항 내지 제9 항 중 어느 한 항에 있어서,
    약한 워터마크가 이전 데이터 프레임의 해쉬값을 포함하는, 강력한 그리고 약한 워터마크 모두를 정보 신호에 삽입하는 방법.
  11. 제10 항에 있어서,
    제1 데이터 프레임에 대해, 0의 값을 갖는 약한 워터마크가 삽입되는, 강력한 그리고 약한 워터마크 모두를 정보 신호에 삽입하는 방법.
  12. 결정하는 방법으로서,
    추출된 약한 워터마크를 기대값과 비교함으로써 압축된 데이터 신호가 진정한 것인지를 결정하고, 기대값과 추출값이 상이한 경우 압축된 데이터 신호가 진정하지 않다고 결정하는 방법.
  13. 제12 항에 있어서,
    기대값은 현재 프레임에 선행하는 프레임의 해쉬값과 동일한, 결정하는 방법.
  14. 제1 항 내지 제13 항 중 어느 한 항에 따른 방법을 수행하도록 배열된 장치.
KR1020067022071A 2004-04-27 2005-04-21 압축된 정보 신호를 워터마킹하는 방법 KR20060136469A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP04101751.8 2004-04-27
EP04101751 2004-04-27

Publications (2)

Publication Number Publication Date
KR20070000499A true KR20070000499A (ko) 2007-01-02
KR20060136469A KR20060136469A (ko) 2007-01-02

Family

ID=

Also Published As

Publication number Publication date
EP1743296B1 (en) 2008-08-13
ATE404949T1 (de) 2008-08-15
CN1950842A (zh) 2007-04-18
EP1743296A1 (en) 2007-01-17
WO2005104029A1 (en) 2005-11-03
DE602005008943D1 (de) 2008-09-25
TW200607361A (en) 2006-02-16
JP2007535262A (ja) 2007-11-29
US20070230708A1 (en) 2007-10-04

Similar Documents

Publication Publication Date Title
JP4248241B2 (ja) 圧縮情報信号のウォーターマーキング
US8144923B2 (en) Watermarking encoded content
EP0928110A2 (en) Image signal processing for electronic watermarking
Zou et al. H. 264 stream replacement watermarking with CABAC encoding
EP1316917B1 (en) Apparatus and method for embedding watermark into original information, transmitting watermarked information, and reconstructing the watermark
KR20040018483A (ko) 압축된 매체 신호 처리
US20060053292A1 (en) Watermarking of a variable bit-rate signal
KR20040065573A (ko) 이미지 신호에 워터마크 임베딩 방법 및 장치
US20050025336A1 (en) Method and apparatus for compressed-domain watermarking
EP1743296B1 (en) Watermarking a compressed information signal
US20070223693A1 (en) Compensating Watermark Irregularities Caused By Moved Objects
WO2005122081A1 (en) Watermarking based on motion vectors
JP2006253755A (ja) 圧縮画像データへの秘匿情報の埋め込み装置、該秘匿情報の抽出装置、秘匿データ書き替え装置、復号装置、復元装置及び秘匿データ埋め込み符号化装置
KR20060136469A (ko) 압축된 정보 신호를 워터마킹하는 방법
Berger II et al. Watermarking in JPEG bitstream
EP1555630B1 (en) Watermarking of images
WO2005122080A1 (en) Variance based variation of watermarking depth in a media signal
JP2009501477A (ja) データを埋め込む方法
Hasnaoui et al. MPEG-4 AVC stream watermarking by ST-mDM techniques
EP1356683A1 (en) Watermarking a compressed information signal
Simitopoulos et al. Digital watermarking for the copyright protection of compressed video

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid