KR101419163B1 - 워터마크 생성기, 워터마크 디코더, 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법, 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법 및 이차원 비트 확산을 이용한 프로그램이 저장된 컴퓨터 판독 가능한 디지털 저장 매체 - Google Patents

워터마크 생성기, 워터마크 디코더, 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법, 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법 및 이차원 비트 확산을 이용한 프로그램이 저장된 컴퓨터 판독 가능한 디지털 저장 매체 Download PDF

Info

Publication number
KR101419163B1
KR101419163B1 KR1020127024982A KR20127024982A KR101419163B1 KR 101419163 B1 KR101419163 B1 KR 101419163B1 KR 1020127024982 A KR1020127024982 A KR 1020127024982A KR 20127024982 A KR20127024982 A KR 20127024982A KR 101419163 B1 KR101419163 B1 KR 101419163B1
Authority
KR
South Korea
Prior art keywords
sequence
information
values
overlay
spreading
Prior art date
Application number
KR1020127024982A
Other languages
English (en)
Other versions
KR20120128146A (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 KR20120128146A publication Critical patent/KR20120128146A/ko
Application granted granted Critical
Publication of KR101419163B1 publication Critical patent/KR101419163B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/018Audio watermarking, i.e. embedding inaudible data in the audio signal
    • 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
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/12Arrangements for observation, testing or troubleshooting
    • H04H20/14Arrangements for observation, testing or troubleshooting for monitoring programmes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/29Arrangements for monitoring broadcast services or broadcast-related services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)

Abstract

이진 메시지 데이터(2410)에 기초하여 워터마크 신호(2420)를 제공하는 워터마크 생성기(2400)는, 이진 메시지 데이터의 단일 메시지 비트에 기초하여, 시간 주파수 영역값들의 세트의 형태로 메시지 비트를 표현하는 이차원 확산 정보(2432)를 제공하도록 구성된 정보 프로세서(2430)를 포함한다. 워터마크 생성기는 또한 이차원 확산 정보에 기초하여 워터마크 신호를 제공하도록 구성된 워터마크 신호 제공기(2440)를 포함한다. 워터마크 디코더, 방법 및 컴퓨터 프로그램이 또한 기술된다.

Description

워터마크 생성기, 워터마크 디코더, 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법, 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법 및 이차원 비트 확산을 이용한 프로그램이 저장된 컴퓨터 판독 가능한 디지털 저장 매체{WATERMARK GENERATOR, WATERMARK DECODER, METHOD FOR PROVIDING A WATERMARK SIGNAL IN DEPENDENCE ON BINARY MESSAGE DATA, METHOD FOR PROVIDING BINARY MESSAGE DATA IN DEPENDENCE ON A WATERMARKED SIGNAL AND COMPUTER-READABLE STORAGE MEDIUM STORING PROGRAM USING A TWO-DIMENSIONAL BIT SPREADING}
본 발명에 따른 실시예들은 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 워터마크 생성기에 관한 것이다. 본 발명에 따른 추가적인 실시예들은 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 워터마크 디코더에 관한 것이다. 본 발명에 따른 추가적인 실시예들은 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법에 관한 것이다. 본 발명에 따른 추가적인 실시예들은 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법에 관한 것이다. 추가적인 실시예들은 이에 대응하는 컴퓨터 프로그램들에 관한 것이다.
본 발명에 따른 몇몇의 실시예들은 견고하고 복잡도가 낮은 오디오 워터마킹 시스템에 관한 것이다.
많은 기술적 응용들에 있어서, 유용한 데이터 또는 "메인 데이터", 예컨대 오디오 신호, 비디오 신호, 그래픽, 측정량 등을 표현하는 정보 또는 신호 내에 부가적인 정보를 포함시키는 것이 바람직하다. 많은 경우들에서, 부가적인 정보가 메인 데이터의 사용자에 의해 인지가능하지 않도록 하면서 부가적인 정보가 메인 데이터(예컨대, 오디오 데이터, 비디오 데이터, 정지 화상 데이터, 측정 데이터, 텍스트 데이터 등)에 결속되도록 이 부가적인 정보를 포함시키는 것이 바람직하다. 또한, 몇몇의 경우들에서, 부가적인 데이터가 메인 데이터(예컨대, 오디오 데이터, 비디오 데이터, 정지 화상 데이터, 측정 데이터 등)로부터 손쉽게 제거가능하지 않도록 이 부가적인 데이터를 포함시키는 것이 바람직하다.
이것은 디지털 저작권 관리를 이행하는 것이 바람직할 수 있는 응용들에서 특히 잘 들어맞는다. 하지만, 때때로는 실질적으로 인지가능하지 않은 보조 정보를 이 유용한 데이터에 추가하는 것이 바람직하다. 예를 들어, 몇몇의 경우들에서, 보조 정보가 오디오 데이터의 출처, 오디오 데이터의 콘텐츠, 오디오 데이터와 관련된 저작권들 등에 관한 정보를 제공하도록, 보조 정보를 오디오 데이터에 추가하는 것이 바람직할 수 있다.
부가적인 데이터를 유용한 데이터 또는 "메인 데이터" 내로 임베딩하기 위해, "워터마킹"이라고 불리우는 개념이 이용될 수 있다. 워터마킹 개념은 오디오 데이터, 정지 화상 데이터, 비디오 데이터, 텍스트 데이터 등과 같은 여러가지 많은 종류의 유용한 데이터에 관한 문헌에서 논의되어 왔다.
이하에서는, 워터마킹 개념이 논의되고 있는 몇개의 참조들이 주어질 것이다. 하지만, 보다 세부사항들에 대해서는 워터마킹과 관련된 폭넓은 분야의 텍스트북 문헌 및 공개물에 주목하기 바란다.
DE 196 40 814 C2는 비가청적 데이터 신호를 오디오 신호내로 도입시키는 코딩 방법과 비가청적 형태로 오디오 신호에 포함된 데이터 신호를 디코딩하는 방법을 기술한다. 비가청적 데이터 신호를 오디오 신호내로 도입시키는 코딩 방법은 오디오 신호를 스펙트럼 영역으로 변환시키는 단계를 포함한다. 코딩 방법은 또한 오디오 신호의 마스킹(masking) 임계치를 결정하는 것과 의사 잡음 신호의 제공을 포함한다. 코딩 방법은 또한 데이터 신호를 제공하는 단계와, 주파수 확산(frequency-spread) 데이터 신호를 획득하기 위해, 의사 잡음 신호를 데이터 신호와 곱하는 단계를 포함한다. 코딩 방법은 또한 확산 데이터 신호를 마스킹 임계치로 가중화하고 이 가중화된 데이터 신호와 오디오 신호를 오버랩시키는 단계를 포함한다.
게다가, WO 93/07689는 비가청적 인코딩된 메시지를 프로그램의 사운드 신호에 추가함으로써, 무선 스테이션에 의해 또는 텔레비젼 채널에 의해 브로드캐스팅되거나, 또는 매체상에 레코딩된 프로그램을 자동적으로 식별하는 방법 및 장치를 기술하며, 여기서의 메시지는 브로드캐스팅 채널 또는 스테이션, 프로그램 및/또는 정확한 일자를 식별해준다. 상기 문서에서 논의된 실시예에서, 사운드 신호는 아날로그-디지털 컨버터를 거쳐서, 주파수 성분들이 분할될 수 있도록 하고 주파수 성분들 중 몇몇의 주파수 성분의 에너지가 미리결정된 방식으로 변경될 수 있도록 하여 인코딩된 식별 메시지를 형성하는 데이터 프로세서에 전송된다. 데이터 프로세서로부터의 출력은 사운드 신호를 브로드캐스팅하거나 또는 레코딩하기 위해 디지털-아날로그 컨버터에 의해 오디오 출력에 연결된다. 상기 문서에서 논의된 또 다른 실시예에서는, 주파수들의 대역을 사운드 신호로부터 분리시키고 이에 따라 분리된 대역에서의 에너지가 사운드 신호를 인코딩하도록 변경될 수 있도록 하기 위해 아날로그 대역통과가 활용된다.
US 5,450,490는 적어도 하나의 코드 주파수 성분을 갖는 코드를 오디오 신호에 포함시키기 위한 장치 및 방법을 기술한다. 코드 주파수 성분을 인간의 청각에 마스킹하기 위한 오디오 신호에서의 다양한 주파수 성분들의 능력들이 평가되고 이러한 평가들에 기초하여 진폭이 코드 주파수 성분에 할당된다. 인코딩된 오디오 신호에서 코드를 검출하기 위한 방법 및 장치가 또한 기술된다. 인코딩된 오디오 신호에서의 코드 주파수 성분은 코드 성분의 주파수를 포함한 오디오 주파수들의 범위 내의 노이즈 진폭 또는 예상된 코드 진폭에 기초하여 검출된다.
WO 94/11989는 브로드캐스트 또는 레코딩된 세그먼트들을 인코딩/디코딩하고 이에 대한 청중 노출을 모니터링하기 위한 방법 및 장치를 기술한다. 브로드캐스트들 또는 레코딩된 세그먼트 신호들에서 정보를 인코딩하고 디코딩하기 위한 방법 및 장치가 기술된다. 본 문서에서 기술된 실시예에서, 청중 모니터링 시스템은 확산 스펙트럼 인코딩을 이용하여 브로드캐스트 또는 레코딩된 세그먼트의 오디오 신호 부분에서 식별 정보를 인코딩한다. 모니터링 디바이스는 마이크로폰을 통해 음향학적으로 재생된 버전의 브로드캐스트 또는 레코딩된 신호를 수신하고, 상당한 앰비언트 노이즈에도 불구하고 오디오 신호 부분으로부터 식별 정보를 디코딩하여 이 정보를 저장하고, 청중 회원에 대한 일지를 자동적으로 제공하는데, 이 일지는 후에 중앙 장치로 업로딩된다. 별개의 모니터링 디바이스는 중앙 장치에서의 청중 일지 정보와 매칭되는 추가적인 정보를 브로드캐스트 신호로부터 디코딩한다. 이 모니터는 동시적으로, 다이얼 업 전화선을 이용하여 중앙 장치에 데이터를 보내고, 확산 스펙트럼 기술을 이용하여 인코딩되고 제3자로부터의 브로드캐스트 신호로 변조된 신호를 통해 중앙 장치로부터 데이터를 수신한다.
WO 95/27349는 코드들을 오디오 신호들에 포함시키고 디코딩하기 위한 장치 및 방법을 기술한다. 적어도 하나의 코드 주파수 성분을 갖는 코드를 오디오 신호에 포함시키기 위한 장치 및 방법이 기술된다. 코드 주파수 성분을 인간의 청각에 마스킹하기 위한 오디오 신호에서의 다양한 주파수 성분들의 능력들이 평가되고 이러한 평가들에 기초하여 진폭이 코드 주파수 성분들에 할당된다. 인코딩된 오디오 신호에서 코드를 검출하기 위한 방법 및 장치가 또한 기술된다. 인코딩된 오디오 신호에서의 코드 주파수 성분은 코드 성분의 주파수를 포함한 오디오 주파수들의 범위 내의 노이즈 진폭 또는 예상된 코드 진폭에 기초하여 검출된다.
하지만, 알려진 워터마킹 시스템들에서는, 비트 에러 레이트가 때때로 불만족스럽다. 또한, 예컨대 매우 긴 확산 시퀀스들이 이용되는 경우, 디코딩 복잡도가 때때로 매우 높다. 게다가, 몇몇의 통상적인 시스템들은 협대역 왜곡 원인들 및/또는 펄스형 왜곡 원인에 의한 워터마킹된 신호의 왜곡들에 민감하다.
이러한 상황을 고려하여, 본 발명의 목적은 양호한 전송 신뢰도를 갖고 비트를 인코딩 및 디코딩하는 개념을 창안하는 것이다.
본 목적은 제1항에 따른 워터마크 생성기, 제8항 또는 제9항에 따른 워터마크 디코더, 제13항에 따른 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법, 제14항에 따른 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법 및 제15항에 따른 컴퓨터 프로그램에 의해 달성된다.
본 발명에 따른 실시예는 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하기 위한 워터마크 생성기를 생성한다. 워터마크 생성기는, 단일 메시지 비트에 기초하여, 메시지 비트를 시간 주파수 영역값들의 세트의 형태로 표현하는 이차원 확산 정보를 제공하도록 구성된 정보 프로세서를 포함한다. 워터마크 생성기는 또한 이차원 확산 정보에 기초하여 워터마크 신호를 제공하도록 구성된 워터마크 신호 제공기를 포함한다.
본 발명의 중요한 아이디어는 단일 메시지 비트를 시간과 주파수 모두에서 확산시킴으로써 이진 메시지 데이터의 비트의 전송 신뢰도는 상당히 개선될 수 있다는 것이다. 따라서, 매우 높은 정도의 리던던시가 달성된다. 또한, 왜곡의 많은 일반적 원인들은 협대역 또는 짧은 기간(펄스형) 중의 어느 하나이기 때문에, 워터마크 신호를 저하시키는 왜곡의 일반적 원인들에 대한 우수한 견고성이 획득된다. 단일 메시지 비트를 표현하는 이차원 확산 정보를 제공함으로써, 단일 메시지 비트의 정보는 복수의 주파수 대역들로 전송되어, (협대역 왜곡 신호 또는 널 전달 함수와 같은) 협대역 왜곡은 일반적으로 정확한 비트 검출을 막지 않게 되며, 비트를 기술하는 정보는 또한 복수의 시간 간격들에 걸쳐 분포되어, 단하나의 시간 간격 또는 (단일 비트 정보가 확산되어 있는 시간 간격들의 갯수보다 상당히 작은) 작은 갯수의 시간 간격들만을 영향을 미치는 짧은 클릭형(펄스형) 왜곡은 일반적으로 메시지 비트를 우수한 신뢰도를 갖고 복구시키는 기회를 제거시키지 않게 된다.
요약하자면, 기술된 개념은 워터마크 디코더측에서 이진 메시지 데이터의 단일 비트을 정확하게 수신하는 증가된 신뢰도를 제공한다.
바람직한 실시예에서, 정보 프로세서는, 제1 확산 시퀀스를 이용하여 메시지 비트를 제1 확산 방향으로 확산시켜서 중간 정보 표현을 획득하고, 중간 정보 표현을 오버레이 정보 표현과 결합하여 결합된 정보 표현을 획득하며, 제2 확산 시퀀스를 이용하여 결합된 정보 표현을 제2 방향으로 확산시켜서 이차원 확산 정보를 획득하도록 구성된다. 메시지 비트와 오버레이 정보(예컨대, 동기화 정보)의 주파수 방향으로의 확산을 위해 별개의 확산 시퀀스들이 이용되고, 시간 방향으로의 확산을 위해 공통 확산 시퀀스가 이용되는 이러한 혼합 개념의 활용은 메시지 비트와 오버랩 정보(예컨대, 동기화 정보)를 적절하게 분리시키는 가능성을 여전히 유지하면서 코딩을 촉진시킨다. 이 개념에 따르면, 오버레이 정보가 동기화 정보인 경우, 특별히 신뢰적인 동기화 취득이 획득될 수 있다. 이 경우, 이진 메시지 데이터와 동기화 정보 모두를 공통 시간 확산 시퀀스를 이용하여 인코딩하는 것이 특히 유리한데, 그 이유는 동기화를 취득하기 위해서는 복수의 포지션 선택들을 위해 시간 역확산이 디코더에서 실행되어야 하기 때문이다. 오버레이 정보의 예시인 동기화 정보와 이진 메시지 데이터에 대해 동일한 시간 확산 시퀀스를 이용함으로써, 계산적 수고가 감소될 수 있고 동기화는 촉진될 수 있다.
바람직한 실시예에서, 정보 프로세서는, 메시지 비트와 오버레이 정보가 상이한 확산 시퀀스들을 통해 제1 확산 방향으로 확산되고, 메시지 비트와 오버레이 정보의 조합이 공통 확산 시퀀스를 통해 제2 확산 방향으로 확산되도록, 오버레이 정보 확산 시퀀스를 이용하여 제1 확산 방향으로 확산된 오버레이 정보 표현과 중간 정보 표현을 결합하도록 구성된다.
바람직한 실시예에서, 정보 프로세서는, 중간 정보 표현과 오버레이 정보 표현을 곱셈결합하고, 중간 정보 표현의 값들과 오버랩 정보의 값들에 기초하여 형성된 곱셈값들을 포함한 결합된 정보 표현을 제2 확산 시퀀스들을 이용하여 제2 확산 방향으로 확산시켜서, 곱셈값들이 공통 확산 시퀀스를 이용하여 확산되도록 구성된다. 중간 정보 표현과 오버레이 정보 표현의 곱셈결합은 특히 유리한데, 그 이유는 중간 정보 표현 및/또는 오버레이 정보 표현의 엘리먼트들의 크기들 또는 절대값들이 이진 메시지 데이터에 독립적인 경우, 이러한 결합은 결합된 정보 표현 값들의 데이터 독립적인 에너지를 야기시키기 때문이다. 이것은 유용한 신호, 예컨대 오디오 신호 내로의 결합된 정보 표현의 비가청적 임베딩을 촉진시킨다. 또한, 곱셈값들에 대한 공통 확산 시퀀스의 적용은 아래에서 논의되는 바와 같이 단순한 디코딩을 가능하게 해준다.
바람직한 실시예에서, 정보 프로세서는, 메시지 비트를 제1 확산 방향으로 확산시키기 위해, 주어진 비트의 값에 기초하여, 주어진 메시지 비트를, 비트 확산 시퀀스의 양의 배수인 제1 비트 표현상으로 선택적으로 확산시키거나, 또는 비트 확산 시퀀스의 음의 배수인 제2 비트 표현상으로 선택적으로 확산시키도록 구성된다. 주어진 메시지 비트의 상이한 값들을 일차종속(linearly dependent) 확산 시퀀스들상으로 확산시킴으로써, 단일 상관은 충분할 것이므로 디코딩이 촉진될 수 있다.
바람직한 실시예에서, 정보 프로세서는, 메시지 비트를 제1 방향으로 확산시킴으로써 획득된 중간 정보 표현의 주어진 값, 또는 메시지 비트를 제1 확산 방향으로 확산시키고 그 결과를 오버레이 정보 표현과 결합시킴으로써 획득된 결합된 정보 표현의 주어진 값을 확산 값들의 세트상에 맵핑하여, 확산 값들의 세트가, 상기 주어진 값에 따라 스케일링된, 스케일링된 버전의 제2 확산 시퀀스가 되게 하도록 구성된다. 제2 확산 방향으로의 이러한 확산을 이용함으로써, 확산 패턴은 매우 낮은 복잡도와 최소의 계산적 수고를 갖고 획득될 수 있다. 이 경우에서 제1 확산 방향으로의 확산과 제2 확산 방향으로의 확산은 실질적으로 독립적으로 수행되어, 인코더측에 있는 확산기가 단순한 구조를 가질 수 있도록 하고 디코더측에 있는 역확산기가 또한 매우 단순한 방식으로 구축될 수 있도록 한다. 특히, 시간 방향 및 주파수 방향으로의 별개의 확산이 인코더측에서 수행될 수 있는데, 이것은 계산 복잡도를 상당히 감소시키고, 오버레이 정보의 도입을 가능하게 해준다. 디코더측에서는, 워터마킹된 신호의 시간 주파수 영역 표현을 완전한 이차원 패턴과 상관시킬 필요가 없다. 오히려, 별개의 단계들에서 시간 방향 및 주파수 방향으로 상관을 수행하면 충분하다.
본 발명에 따른 실시예는 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하기 위한 워터마크 디코더를 창안한다. 워터마크 디코더는 워터마킹된 신호의 시간 주파수 영역 표현을 제공하도록 구성된 시간 주파수 영역 표현 제공기, 및 역확산기를 포함한 동기화 결정기를 포함한다. 역확산기는 하나 이상의 역확산기 블록들을 포함하고, 역확산기는 시간 주파수 영역 표현의 이차원 부분에 기초하여 동기화 정보를 획득하기 위해 이차원 역확산을 수행하도록 구성된다. 워터마크 디코더는 또한 동기화 정보를 이용하여 워터마크 신호의 시간 주파수 영역 표현으로부터 이진 메시지 데이터를 추출하도록 구성된 워터마크 추출기를 포함한다.
본 발명에 따른 또 다른 실시예는 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하기 위한 워터마크 디코더를 창안한다. 워터마크 디코더는 워터마킹된 신호의 시간 주파수 영역 표현을 제공하도록 구성된 시간 주파수 영역 표현 제공기, 및 하나 이상의 역확산기 블록들을 갖는 역확산기를 포함한 워터마크 추출기를 포함한다. 역확산기는 시간 주파수 영역 표현의 이차원 부분에 기초하여 이진 메시지 데이터의 비트를 획득하기 위해 이차원 역확산을 수행하도록 구성된다.
본 발명에 따른 뒷쪽의 두 개의 실시예들은 이차원 역확산을 수행함으로써 동기화와 이진 메시지 데이터의 비트 모두는 우수한 정확도와 신뢰도를 갖고 취득될 수 있다라는 발견에 기초한다. 따라서, 워터마크 디코더들은 워터마크 생성기와 관련하여 위에서 논의된 장점들의 실현을 가능하게 해준다.
바람직한 실시예에서, 역확산기는 복수의 시간 주파수 영역 표현 값들과 시간적 역확산 시퀀스의 값들을 곱하고 이 곱셈의 결과들을 합산하여 시간적 역확산 값을 획득하도록 구성된다. 역확산기는 이차원적으로 시간 주파수 영역 표현 값들의 상이한 주파수들과 연관된 복수의 시간적 역확산 값들, 또는 이로부터 유도된 값들과 주파수 역확산 시퀀스 값들을 엘리먼트별로 곱하고 이 곱셈의 결과들을 합산하여 역확산된 값을 획득하도록 구성된다. 이 실시예는 시간적 역확산이 주파수 역확산과는 독립적으로 수행되는, 특히 단순하고 구현하기가 손쉬운 역확산 개념을 구현한다. 따라서, 워터마크 디코더는 예컨대 우수한 성능과 높은 신뢰성을 여전히 제공하면서 많은 컴포넌트들이 재사용될 수 있는, 비교적 단순한 하드웨어 구조를 가질 수 있다.
바람직한 실시예에서, 역확산기는 시간적으로 역확산된 값들의 세트를 획득하도록 구성된다. 역확산기는 복수의 시간 주파수 영역 표현 값들과 시간적 역확산 시퀀스의 값들을 곱하고 이 곱셈의 결과들을 합산하여 시간적으로 역확산된 값들 중 하나의 역확산 값을 획득하도록 구성된다. 역확산기는 또한 시간적 역확산 값들을 주파수 역확산 시퀀스의 값들과 엘리먼트별로 곱하고, 이 곱셈들의 결과들을 합산하여 이차원적으로 역확산된 값을 획득하도록 구성된다.
바람직한 실시예에서, 역확산기는, 시간적으로 역확산된 값들의 후속 세트들을, 상이한 주파수 역확산 시퀀스들의 값들과 엘리먼트별로 곱하여 시간적으로 역확산된 값들의 제1 세트가 엘리먼트별로 및 1단계 또는 다단계 곱셈으로 유효하게 곱해지도록 하고, 공통 주파수 역확산 시퀀스와 제1 오버레이 역확산 시퀀스의 곱인 제1 결합된 주파수 역확산 시퀀스로 곱하여 시간적으로 역확산된 값들의 제2 세트가 엘리먼트별로 및 1단계 또는 다단계 곱셈으로 유효하게 곱해지도록 하며, 제1 오버레이 역확산 시퀀스와는 상이한 제2 오버레이 역확산 시퀀스와 공통 주파수 역확산 시퀀스의 곱인 제2 결합된 주파수 역확산 시퀀스로 곱하도록 구성된다. 이 개념을 이용하여, 데이터 콘텐츠의 추출을 상당히 단순하게 유지하면서 비트들의 정렬이 식별될 수 있다. 주파수 역확산 시퀀스들 중의 하나는 가변적인 반면에, 나머지 다른 주파수 역확산 시퀀스는 고정되기 때문에, 잠재적인 조합들의 갯수는 작게 유지된다. 한편, 그럼에도 불구하고, 상이한 시간 부분들에 대해 상이한 주파수 역확산 시퀀스들을 이용함으로써, 시간적 정렬이 결정될 수 있다.
본 발명에 따른 추가적인 실시예들은 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법과 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법을 창안한다. 또한, 몇몇의 실시예들은 상기 방법들 모두 또는 그 중 하나의 방법을 수행하기 위한 컴퓨터 프로그램을 창안한다. 본 방법 및 컴퓨터 프로그램은 상기 장치와 동일한 발견들에 기초하며, 이에 따라 위 설명들이 또한 유지된다.
이하에서는 첨부된 도면들을 참조하면서 본 발명에 따른 실시예들을 설명할 것이다:
도 1은 본 발명의 실시예에 따른 워터마크 삽입기의 블록 개략도를 도시한다.
도 2는 본 발명의 실시예에 따른, 워터마크 디코더의 블록 개략도를 도시한다.
도 3은 본 발명의 실시예에 따른, 워터마크 생성기의 상세한 블록 개략도를 도시한다.
도 4는 본 발명의 실시예에서 이용하기 위한, 변조기의 상세한 블록 개략도를 도시한다.
도 5는 본 발명의 실시예에서 이용하기 위한, 음향심리 프로세싱 모듈의 상세한 블록 개략도를 도시한다.
도 6은 본 발명의 실시예에서 이용하기 위한, 음향심리 모델 프로세서의 블록 개략도를 도시한다.
도 7은 블록(801)에 의해 출력된 오디오 신호의, 주파수에 걸친 전력 스펙트럼의 그래픽 표현을 도시한다.
도 8은 블록(802)에 의해 출력된 오디오 신호의, 주파수에 걸친 전력 스펙트럼의 그래픽 표현을 도시한다.
도 9는 진폭 계산의 블록 개략도를 도시한다.
도 10a는 변조기의 블록 개략도를 도시한다.
도 10b는 시간 주파수 평면상에서의 계수들의 위치의 그래픽 표현을 도시한다.
도 11a와 도 11b는 동기화 모듈의 구현 대안들의 블록 개략도들을 도시한다.
도 12a는 워터마크의 시간적 정렬을 발견하는 문제의 그래픽 표현을 도시한다.
도 12b는 메시지 시작을 식별하는 문제의 그래픽 표현을 도시한다.
도 12c는 완전 메시지 동기화 모드에서의 동기화 시퀀스들의 시간적 정렬의 그래픽 표현을 도시한다.
도 12d는 부분적 메시지 동기화 모드에서의 동기화 시퀀스들의 시간적 정렬의 그래픽 표현을 도시한다.
도 12e는 동기화 모듈의 입력 데이터의 그래픽 표현을 도시한다.
도 12f는 동기화 히트(hit)를 식별하는 개념의 그래픽 표현을 도시한다.
도 12g는 동기화 시그너처 상관기의 블록 개략도를 도시한다.
도 13a는 시간적 역확산에 대한 예시의 개략적인 표현을 도시한다.
도 13b는 비트들과 확산 시퀀스들간의 엘리먼트별 곱셈에 대한 예시의 개략적인 표현을 도시한다.
도 13c는 시간적 평균화 이후의 동기화 시그너처 상관기의 출력의 그래픽 표현을 도시한다.
도 13d는 동기화 시그너처의 자기상관함수로 필터링된 동기화 시그너처 상관기의 출력의 그래픽 표현을 도시한다.
도 14는 본 발명의 실시예에 따른, 워터마크 추출기의 블록 개략도를 도시한다.
도 15는 후보 메시지로서의 시간 주파수 영역 표현의 일부의 선택의 개략도를 도시한다.
도 16은 분석 모듈의 블록 개략도를 도시한다.
도 17a는 동기화 상관기의 출력의 그래픽 표현을 도시한다.
도 17b는 디코딩된 메시지들의 그래픽 표현을 도시한다.
도 17c는 워터마킹된 신호로부터 추출된, 동기화 포지션의 그래픽 표현을 도시한다.
도 18a는 페이로드, 비터비(Viterbi) 종단 시퀀스를 갖는 페이로드, 비터비 인코딩된 페이로드 및 비터비 코딩된 페이로드의 반복 코딩된 버전의 그래픽 표현을 도시한다.
도 18b는 워터마킹된 신호를 임베딩하기 위해 이용된 서브캐리어들의 그래픽 표현을 도시한다.
도 19는 코딩되지 않은 메시지, 코딩된 메시지, 동기화 메시지 및 동기화 시퀀스가 메시지들에 적용되어 있는 워터마크 신호의 그래픽 표현을 도시한다.
도 20은 소위 말하는 “ABC 동기화” 개념의 제1 단계의 개략도를 도시한다.
도 21은 소위 말하는 “ABC 동기화” 개념의 제2 단계의 그래픽 표현을 도시한다.
도 22는 소위 말하는 “ABC 동기화” 개념의 제3 단계의 그래픽 표현을 도시한다.
도 23은 페이로드 및 CRC 부분을 포함한 메시지의 그래픽 표현을 도시한다.
도 24는 본 발명의 실시예에 따른, 워터마크 생성기의 블록 개략도를 도시한다.
도 25a는 본 발명의 실시예에 따른, 워터마크 디코더의 블록 개략도를 도시한다.
도 25b는 본 발명의 실시예에 따른, 워터마크 디코더의 블록 개략도를 도시한다.
도 26은 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법의 흐름도를 도시한다.
도 27은 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법의 흐름도를 도시한다.
1. 워터마크 생성
1.1. 도 24에 따른 워터마크 생성기
이하에서는, 도 24를 참조하여 워터마크 생성기(2400)를 설명할 것이며, 도 24는 이러한 워터마크 생성기의 블록 개략도를 도시한다. 워터마크 생성기(2400)는 이진 메시지 데이터(2410)를 수신하고, 이를 기초로, 워터마크 신호(2420)를 제공하도록 구성된다. 워터마크 생성기는, 이진 메시지 데이터(2410)의 단일 메시지 비트에 기초하여, 시간 주파수 영역값들의 세트의 형태로 메시지 비트를 표현하는 이차원 확산 정보(2432)를 제공하도록 구성된 정보 프로세서(2430)를 포함한다. 워터마크 생성기(2400)는 또한 이차원 확산 정보(2432)에 기초하여 워터마크 신호(2420)를 제공하도록 구성된 워터마크 신호 제공기(2440)를 포함한다.
워터마크 생성기(2400)는 아래의 섹션 3에서 보다 자세하게 논의되는 특징들 및 기능들 중 임의의 것에 의해 보충될 수 있다.
1.2 도 26에 따른 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법
이하에서는, 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법을 도 26을 참조하여 설명할 것이며, 도 26은 이러한 방법의 흐름도를 도시한다.
도 26의 방법(2600)은 이진 메시지 데이터의 단일 메시지 비트에 기초하여, 시간 주파수 영역값들의 세트의 형태로 메시지 비트를 표현하는 이차원 확산 정보를 제공하는 단계(2610)를 포함한다. 방법(2600)은 또한 이차원 확산 정보에 기초하여 워터마크 신호를 제공하는 단계(2620)를 포함한다.
당연히, 방법(2600)은 본 발명의 장치와 관련되어 여기서 논의되는 특징들 및 기능들 중 임의의 것에 의해 보충될 수 있다.
2. 워터마크 디코딩
2.1. 도 25a에 따른 워터마크 디코더
이하에서는, 도 25a를 참조하여 워터마크 디코더(2500)를 설명할 것이며, 도 25a는 이러한 워터마크 디코더의 블록 개략도를 도시한다.
워터마크 디코더(2500)는 워터마킹된 신호(2510)에 기초하여 이진 메시지 데이터(2520)를 제공하도록 구성된다. 워터마크 디코더(2500)는 워터마킹된 신호의 시간 주파수 영역 표현(2532)을 제공하도록 구성된 시간 주파수 영역 표현 제공기(2530)를 포함한다. 워터마크 디코더(2500)는 또한 동기화 결정기(2540)를 포함한다. 동기화 결정기(2540)는 하나 이상의 역확산 블록들을 갖는 역확산기(2542)를 포함한다. 역확산기(2542)는 시간 주파수 영역 표현(2532)의 이차원 부분에 기초하여 동기화 정보(2544)를 획득하기 위해 이차원 역확산을 수행하도록 구성된다. 워터마크 디코더(2500)는 또한 동기화 정보(2544)를 이용하여 워터마킹된 신호의 시간 주파수 영역 표현(2532)으로부터 이진 메시지 데이터(2520)를 추출하도록 구성된 워터마크 추출기(2550)를 포함한다.
당연히, 워터마크 디코더(2500)는 워터마크 디코딩과 관련하여 여기서 논의되는 수단들 및 기능들 중 임의의 것에 의해 보충될 수 있다.
2.2. 도 25b에 따른 워터마크 디코더
이하에서는, 도 25b를 참조하여 워터마크 생성기(2560)를 설명할 것이며, 도 25b는 이러한 워터마크 생성기의 블록 개략도를 도시한다.
워터마크 생성기(2560)는 워터마크 신호(2570)를 수신하고, 이를 기초로, 이진 메시지 데이터(2580)를 제공하도록 구성된다. 워터마크 디코더(2560)는 워터마크 신호(2570)의 시간 주파수 영역 표현(2592)을 제공하도록 구성된 시간 주파수 영역 표현 제공기(2590)를 포함한다. 워터마크 디코더는 또한 역확산기(2598)를 포함한 워터마크 추출기(2596)를 포함한다. 역확산기는 시간 주파수 영역 표현(2592)의 이차원 부분에 기초하여 이진 메시지 데이터의 비트를 획득하기 위해 이차원 역확산을 수행하도록 구성된다.
당연히, 워터마크 디코더(2560)는 워터마크 디코딩과 관련하여 여기서 논의되는 수단들 및 기능들 중 임의의 것에 의해 보충될 수 있다.
2.3 도 27에 따른 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법
이하에서는, 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법(2700)을 도 27을 참조하여 설명할 것이며, 도 27은 이러한 방법의 흐름도를 도시한다.
방법(2700)은 워터마킹된 신호의 시간 주파수 영역 표현을 제공하는 단계(2710)를 포함한다. 방법(2700)은 또한 시간 주파수 영역 표현의 이차원 부분에 기초하여 워터마킹된 신호의 시간 주파수 영역 표현으로부터 이진 메시지 데이터를 추출하기 위해 이용된 동기화 정보 또는 이진 메시지 데이터의 비트를 획득하기 위해 이차원 역확산을 수행하는 단계(2720)를 포함한다.
당연히, 방법(2700)은 워터마크 디코딩과 관련하여 여기서 논의되는 특징들 및 기능들 중 임의의 것에 의해 보충될 수 있다.
3. 시스템 설명
이하에서는, 워터마크 삽입기와 워터마크 디코더를 포함한, 워터마크 전송을 위한 시스템을 설명할 것이다. 당연히, 워터마크 삽입기와 워터마크 디코더는 서로 독립적으로 이용될 수 있다.
시스템의 설명을 위해, 여기서는 톱다운(top-down) 방식이 선택된다. 제일먼저, 인코더와 디코더사이가 구별된다. 그런 후, 섹션 3.1 내지 섹션 3.5에서 각각의 프로세싱 블록이 자세하게 설명된다.
시스템의 기본구조는 도 1과 도 2에서 살펴볼 수 있는데, 이 도 1과 도 2는 인코더 및 디코더측을 각각 도시한다. 도 1은 워터마크 삽입기(100)의 블록 개략도를 도시한다. 인코더측에서, 워터마크 신호(101b)는 음향심리 프로세싱 모듈(102)과 교환된 정보(104, 105)에 기초하여 및 이진 데이터(101a)로부터 프로세싱 블록(101)(또한 워터마크 생성기로서 지정됨)에서 생성된다. 블록(102)으로부터 제공된 정보는 일반적으로 워터마크가 비가청적인 것을 보장한다. 그런 후 워터마크 생성기(101)에 의해 생성된 워터마크는 오디오 신호(106)에 추가된다. 그런 후 워터마킹된 신호(107)가 전송되고, 저장되거나, 또는 추가로 프로세싱된다. 멀티미디어 화일, 예컨대 오디오-비디오 화일의 경우, 오디오-비디오 동기화를 손실하지 않도록 비디오 스트림에 적절한 지연이 추가될 필요가 있다. 멀티채널 오디오 신호의 경우, 각각의 채널은 본 명세서에서 설명되는 바와 같이 개별적으로 프로세싱된다. 프로세싱 블록들, 즉 워터마크 생성기(101) 및 음향심리 프로세싱 모듈(102)은 섹션 3.1과 섹션 3.2에서 각각 자세하게 설명된다.
도 2에서는 디코더측이 도시되며, 이 도 2는 워터마크 디코더(200)의 블록 개략도를 도시한다. 시스템(200)에 대해서는 예컨대 마이크로폰에 의해 레코딩된, 워터마킹된 오디오 신호(200a)가 이용가능하다. 제1 블록(203)(이것은 또한 분석 모듈로서 지정됨)은 시간/주파수 영역에서 데이터(예컨대, 워터마킹된 오디오 신호)를 복조하여 변환시키고(이로써 워터마킹된 오디오 신호(200a)의 시간 주파수 영역 표현(204)을 획득하며) 이것을 동기화 모듈(201)에 전달하며, 이 동기화 모듈(201)은 입력 신호(204)를 분석하고 시간적 동기화를 수행하는데, 즉 인코딩된 데이터의(예컨대 시간 주파수 영역 표현에 대한 인코딩된 워터마크 데이터의) 시간적 정렬을 결정한다. 이 정보(예컨대, 결과적인 동기화 정보(205))는 워터마크 추출기(202)에 주어지고, 워터마크 추출기(202)는 이 데이터를 디코딩한다(그리고 결과적으로 워터마킹된 오디오 신호(200a)의 데이터 콘텐츠를 표현하는, 이진 데이터(202a)를 제공한다).
3.1 워터마크 생성기(101)
도 3에서는 워터마크 생성기(101)가 자세하게 도시된다. 오디오 신호(106)에서 은닉될 이진 데이터(±1로서 표현됨)가 워터마크 생성기(101)에 주어진다. 블록(301)은 데이터(101a)를 동일 길이(Mp)의 패킷들로 조직화한다. 시그널링 목적으로 오버헤드 비트들이 각각의 패킷에 부가(예컨대, 첨부)된다. Ms는 오버헤드 비트들 각각의 수치를 표시하는 것이라고 가정한다. 이들의 이용은 섹션 3.5에서 자세하게 설명될 것이다. 이하에서 시그널링 오버헤드 비트들과 함께 페이로드 비트들의 각각의 패킷은 메시지로서 표시된다는 것을 유념한다.
길이 Nm = Ms + Mp의 각각의 메시지(301a)는 프로세싱 블록(302), 즉 에러 방지를 위해 비트들을 코딩하는 것을 담당하는 채널 인코더에 전달된다. 이 모듈의 잠재적인 실시예들은 인터리버와 함께 콘볼루션 인코더로 구성된다. 콘볼루션 인코더의 비율은 워터마킹 시스템의 총체적인 에러 방지도에 매우 영향을 미친다. 한편, 인터리버는 노이즈 버스트 방지를 가져온다. 인터리버의 동작의 범위는 하나의 메시지로 제한될 수 있지만 이것은 또한 보다 많은 메시지들로 확장될 수 있다. Rc는 코드 비율, 예컨대 1/4을 표시하는 것이라고 가정한다. 각각의 메시지마다의 코딩된 비트들의 갯수는 Nm/Rc이다. 채널 인코더는 예컨대, 인코딩된 이진 메시지(302a)를 제공한다.
다음의 프로세싱 블록(303)은 주파수 영역에서의 확산을 수행한다. 충분한 신호 대 노이즈 비율을 달성하기 위해, 정보(예컨대, 이진 메시지(302a)의 정보)는 신중히 선택된 Nf개의 서브대역들에서 확산되고 전달된다. 서브대역들의 정확한 주파수 포지션은 선험적으로 결정되고 인코더 및 디코더 모두에게 알려진다. 이러한 중요한 시스템 파라미터의 선택에 관한 세부사항은 섹션 3.2.2에서 주어진다. 주파수에서의 확산은 Nf X 1 크기의 확산 시퀀스 cf에 의해 결정된다. 블록(303)의 출력(303a)은 각각의 서브대역 당 하나씩, Nf개의 비트 스트림들로 구성된다. i번째 비트 스트림은 입력 비트에 확산 시퀀스 cf의 i번째 성분을 곱함으로써 획득된다. 가장 단순한 확산은 비트 스트림을 각각의 출력 스트림에 복사하는 것, 즉 모든 스트림의 확산 시퀀스를 이용하는 것으로 구성된다.
블록(304)(이것은 또한 동기화 기법 삽입기로서 지정됨)은 동기화 신호를 비트 스트림에 추가시킨다. 디코더는 비트들이나 데이터 구조의 시간적 정렬, 즉 각각의 메시지가 언제 시작하는지를 알지못하므로, 견고한 동기화가 중요하다. 동기화 신호는 Nf개의 비트들 각각의 Ns개의 시퀀스들로 구성된다. 시퀀스들은 엘리먼트별로 그리고 주기적으로 비트 스트림(또는 비트 스트림들(303a))에 곱해진다. 예를 들어, a, b, 및 c를 Ns = 3개의 동기화 시퀀스들(또한 동기화 확산 시퀀스들로서 지정됨)인 것으로 가정한다. 블록(304)은 a를 제1 확산 비트에 곱하고, b를 제2 확산 비트에 곱하며, c를 제3 확산 비트에 곱한다. 이후의 비트들에 대해서 본 프로세스는 주기적으로 반복되는데, 즉 a를 제4 비트에, b를 제5 비트에 대해 곱하는 식으로 계속된다. 따라서, 결합된 정보-동기화 정보(304a)가 획득된다. 허위 동기화의 위험을 최소화하기 위해 동기화 시퀀스들(또는 동기화 확산 시퀀스들로서 지정됨)은 신중히 선택된다. 보다 세부사항들은 섹션 3.4에서 주어진다. 또한, 시퀀스 a, b, c,...는 동기화 확산 시퀀스들의 시퀀스로서 간주될 수 있다는 것을 유념해야 한다.
블록(305)은 시간 영역에서의 확산을 수행한다. 입력에서의 확산 비트 각각, 즉 Nf 길이의 벡터는 시간 영역에서 Nt회 반복된다. 주파수에서의 확산과 마찬가지로, Nt X 1 크기의 확산 시퀀스 ct를 정의한다. i번째 시간적 반복은 ct의 i번째 성분과 곱해진다.
블록(302) 내지 블록(305)의 동작들은 다음과 같은 수학적 용어들로 표현될 수 있다. 1xNm=Rc 크기의 m을 블록(302)의 출력인, 코딩된 메시지인 것으로 가정한다. 블록(303)의 출력(303a)(이것은 확산 정보 표현 R로서 간주될 수 있음)은,
Figure 112012077510412-pct00001
이다.
결합된 정보-동기화 표현 C로서 간주될 수 있는 블록(304)의 출력(304a)은
Figure 112012077510412-pct00002
이며,
여기서,
Figure 112012077510412-pct00003
는 슈르 엘리먼트별 곱(Schur element-wise product)이며,
Figure 112012077510412-pct00004
이다.
305의 출력(305a)은
Figure 112012077510412-pct00005
이다.
Figure 112012077510412-pct00006
Figure 112012077510412-pct00007
는 크로네커(Kronecker) 곱과 전치를 각각 표시한다. 이진 데이터는 ±1로서 표현된다는 것을 상기하라.
블록(306)은 비트들의 차등 인코딩(differential encoding)을 수행한다. 이 단계는 움직임 또는 로컬 오실레이터 미스매치들로 인한 위상 쉬프트에 대한 추가적인 견고성을 시스템에 가져다준다. 이 문제에 관한 보다 세부사항들은 섹션 3.3에서 주어진다. b(i;j)가 블록(306)의 입력에서 i번째 주파수 대역과 j번째 시간 블록에 대한 비트이면, 출력 비트 bdiff(i;j)는
Figure 112012077510412-pct00008
이다.
스트림의 시작부분(즉, j = 0인 경우)에서, bdiff(i,j-1)은 1로 설정된다.
블록(307)은 자신의 입력에서 주어진 이진 정보(306a)에 기초한 실제 변조, 즉 워터마크 신호 파형의 생성을 수행한다. 보다 자세한 회로도가 도 4에서 주어진다. Nf개 병렬 입력들(즉, 401 내지 40Nf)은 상이한 서브대역들에 대한 비트 스트림들을 포함한다. 각각의 서브대역 스트림의 각각의 비트는 비트 쉐이핑 블록(411 내지 41Nf)에 의해 프로세싱된다. 비트 쉐이핑 블록들의 출력은 시간 영역에서의 파형들이다. j번째 시간 블록과 i번째 서브대역에 대해 생성된 파형(si ;j(t)로 표시됨)은, 입력 비트 bdiff(i,j)에 기초하여, 다음과 같이 계산된다:
Figure 112012077510412-pct00009
여기서,
Figure 112012077510412-pct00010
는 음향심리 프로세싱 유닛(102)에 의해 제공된 가중인자이고, Tb는 비트 시간 간격이며, gi(t)는 i번째 서브대역에 대한 비트 형성 함수이다. 비트 형성 함수는 코사인으로 주파수 변조된 기저대역 함수
Figure 112012077510412-pct00011
로부터 획득되며,
Figure 112012077510412-pct00012
이다.
여기서 fi는 i번째 서브대역의 중심 주파수이고 윗첨자 T는 전달자를 나타낸다. 기저대역 함수들은 각각의 서브대역마다 다를 수 있다. 만일 동일하게 선택되면, 디코더에서의 보다 효율적인 구현이 가능하다. 보다 상세사항에 대해서는 섹션 3.3을 참조하라.
각각의 비트에 대한 비트 쉐이핑은 음향심리 프로세싱 모듈(102)에 의해 제어된 반복적 프로세스로 되풀이된다. 워터마크를 비가청적으로 유지시키면서 가능한 많은 에너지를 워터마크에 할당하기 위해 가중치들
Figure 112012077510412-pct00013
을 미세조정하기 위한 반복들이 필요하다. 보다 상세사항은 섹션 3.2에서 주어진다.
i번째 비트 쉐이핑 필터(41i)의 출력에서의 완성된 파형은
Figure 112012077510412-pct00014
이다.
비트 형성 기저대역 함수
Figure 112012077510412-pct00015
는 보통 Tb보다 훨씬 큰 시간 간격에 대해 제로가 아니지만, 주 에너지는 비트 간격 내에서 집중된다. 동일한 비트 형성 기저대역 함수가 두 개의 인접한 비트들에 대해 도표화된 도 12a에서 예시를 살펴볼 수 있다. 본 도면에서 Tb = 40 ms이다. 함수의 형상뿐만이 아니라 Tb의 선택은 시스템에 상당히 영향을 미친다. 실제로, 보다 긴 심볼들은 보다 좁은 주파수 응답들을 제공한다. 이것은 특히 반향 환경에서 유리하다. 실제로, 이러한 시나리오들에서 워터마킹된 신호는 상이한 전파 시간에 의해 각각 특징지어진 여러 개의 전파 경로들을 통해 마이크로폰에 도달한다. 결과적인 채널은 강한 주파수 선택성을 나타낸다. 시간 영역에서 해석하면, 비트 간격에 필적한 지연을 갖는 에코들은 보강 간섭을 일으키는데, 이것은 수신 신호 에너지를 증가시키는 것을 의미하므로 보다 긴 심볼들이 유리하다. 그렇긴 하지만, 보다 긴 심볼들은 또한 몇가지 결점들을 가져오는데; 보다 큰 오버랩들은 심볼간 간섭(intersymbol interference; ISI)을 야기시킬 수 있고 오디오 신호 내에 은닉하기가 확실히 매우 어려우므로, 음향심리 프로세싱 모듈은 짧은 심볼들보다 적은 에너지를 허용할 것이다.
워터마크 신호는 비트 쉐이핑 필터들의 모든 출력들을 다음과 같이 합산함으로써 획득된다:
Figure 112012077510412-pct00016
3.2 음향심리 프로세싱 모듈(102)
도 5에서 도시된 바와 같이, 음향심리 프로세싱 모듈(102)은 세 개의 부분으로 구성된다. 제1 단계는 시간 오디오 신호를 시간/주파수 영역으로 변환시키는 분석 모듈(501)이다. 이 분석 모듈은 상이한 시간/주파수 분해능으로 병렬 분석들을 수행할 수 있다. 분석 모듈 이후, 시간/주파수 데이터는 음향심리 모델(psychoacoustic model; PAM)(502)로 전달되고, 이 음향심리 모델(PAM)(502)에서 워터마크 신호에 대한 마스킹 임계치는 음향심리 고려사항들에 따라 계산된다(E. Zwicker H.Fastl의 "Psychoacoustics Facts and models"을 참조하라). 마스킹 임계치는 각각의 서브대역 및 시간 블록에 대한 오디오 신호 내에 은닉될 수 있는 에너지의 양을 표시한다. 음향심리 프로세싱 모듈(102)에서의 최종적인 블록은 진폭 계산 모듈(503)을 도시한다. 이 모듈은 마스킹 임계치가 충족되도록, 즉 임베딩된 에너지가 마스킹 임계치에 의해 정의된 에너지 이하가 되도록 워터마크 신호의 생성에서 이용될 진폭 이득들을 결정한다.
3.2.1 시간/주파수 분석(501)
블록(501)은 랩 변환(lapped transform)을 통해 오디오 신호의 시간/주파수 변환을 수행한다. 다중 시간/주파수 분해능을 수행할 때 최상의 오디오 퀄리티가 달성될 수 있다. 랩 변환의 한가지 효율적인 실시예는 윈도우잉 시간 블록들의 고속 푸리에 변환(fast Fourier transform; FFT)에 기초한, 단구간 푸리에 변환(short time Fourier transform; STFT)이다. 윈도우의 길이는 시간/주파수 분해능을 결정하며, 이에 따라 보다 긴 윈도우들은 보다 낮은 시간 및 보다 높은 주파수 분해능들을 야기시킬 것인 반면에, 보다 짧은 윈도우들은 그 반대의 상황을 야기시킬 것이다. 한편, 그 중에서 윈도우의 형상은 주파수 누설을 결정한다.
제안된 시스템에서는, 데이터를 두 개의 상이한 분해능들로 분석함으로써 비가청적인 워터마크를 달성한다. 제1 필터 뱅크는 Tb의 홉 크기, 즉 비트 길이에 의해 특징지어진다. 홉 크기는 두 개의 인접한 시간 블록들 사이의 시간 간격이다. 윈도우 길이는 대략 Tb이다. 윈도우 형상은 비트 쉐이핑을 위해 이용된 것과 동일할 필요는 없으며, 일반적으로 인간 청각 시스템을 모델링해야 한다는 점을 유념하길 바란다. 수많은 공개문헌들이 이 문제를 연구하였다.
제2 필터 뱅크는 보다 짧은 윈도우를 적용한다. 스피치의 시간적 구조는 일반적으로 Tb보다 미세하기 때문에, 보다 높은 시간적 분해능이 달성되는 것은 스피치에 워터마크를 임베딩할 때 특히 중요하다.
입력 오디오 신호의 샘플링 레이트는 얼라이어싱 없이 워터마크 신호를 기술하는데 충분히 큰 경우에는 중요하지가 않다. 예를 들어, 워터마크 신호 내에 포함된 최대 주파수 성분이 6 kHz이면, 시간 신호들의 샘플링 레이트는 적어도 12 kHz이여야 한다.
3.2.2 음향심리 모델(502)
음향심리 모델(502)은 마스킹 임계치, 즉 원래 오디오 신호로부터 워터마킹된 오디오 신호가 구별되지 못하도록 각각의 서브대역 및 시간 블록에 대한 오디오 신호 내에 은닉될 수 있는 에너지의 양을 결정하는 업무를 갖는다.
i번째 서브대역은 두 개의 한도들, 즉
Figure 112012077510412-pct00017
Figure 112012077510412-pct00018
사이에서 정의된다. 서브대역들은 Nf개의 중심 주파수들 fi을 정의하고
Figure 112012077510412-pct00019
i(i = 2, 3, ... , Nf)로 설정함으로써 결정된다. 중심 주파수들에 대한 적절한 선택은 1961년에 Zwicker에 의해 제안된 바크 스케일(Bark scale)에 의해 주어진다. 서브대역들은 중심 주파수들이 높아질수록 커져간다. 시스템의 잠재적인 구현은 적절한 방식으로 배열된 1.5 kHz 내지 6 kHz의 범위의 9개의 서브대역들을 이용한다.
이하의 프로세싱 단계들은 각각의 서브대역 및 각각의 시간 블록에 대한 각각의 시간/주파수 분해능에 대해 개별적으로 수행된다. 프로세싱 단계(801)는 스펙트럼 평활화를 수행한다. 실제로, 음색 엘리먼트들뿐만이 아니라, 전력 스펙트럼에서의 노치(notch)들은 평활화될 필요가 있다. 이것은 여러 방식들로 수행될 수 있다. 음색 수치가 계산될 수 있고, 그런 후 이것은 적응적 평활화 필터를 구동시키기 위해 이용될 수 있다. 대안적으로, 이 블록의 보다 단순한 구현에서, 미디안형 필터가 이용될 수 있다. 미디안 필터(median filter)는 값들의 벡터를 고려하고 이 벡터들의 미디안 값들을 출력한다. 미디안형 필터에서는 50%과는 다른 변위치(quantile)에 대응하는 값이 선택될 수 있다. 필터 폭은 Hz로 정의되고, 저주파수에서 시작하고 잠재적인 최고 주파수에서 종결하는 비선형 이동 평균으로서 적용된다. 블록(801)의 동작은 도 7에서 도시된다. 적색 곡선은 평활화의 출력이다.
평활화가 수행되면, 주파수 마스킹만을 고려하여 블록(802)에 의해 임계치들이 계산된다. 또한 이 경우에서는 여러가지 가능성들이 존재한다. 한가지 방법은 각각의 서브대역에 대한 최소값을 이용하여 마스킹 에너지 Ei를 계산하는 것이다. 이것은 마스킹을 효율적으로 동작시키는 신호의 등가적 에너지이다. 이 값으로부터 어떠한 스케일링 인자를 단순히 곱하여 마스킹된 에너지 Ji를 획득할 수 있다. 이러한 인자들은 각각의 서브대역 및 시간/주파수 분해능에 대해 상이하며 경험적 음향심리 실험들을 통해 획득된다. 이러한 단계들이 도 8에서 도시된다.
블록 805에서, 시간적 마스킹이 고려된다. 이 경우에서, 동일한 서브대역에 대한 상이한 시간 블록들이 분석된다. 마스킹된 에너지들 Ji는 경험적으로 유도된 포스트마스킹 프로파일에 따라 수정된다. 두 개의 인접한 시간 블록들, 즉 k-1과 k를 고려한다. 대응하는 마스킹된 에너지들은 Ji(k-l) 및 Ji(k)이다. 포스트마스킹 프로파일은, 예컨대, 마스킹 에너지 Ei가 시간 k에서 에너지 Ji를, 시간 k+1에서는
Figure 112012077510412-pct00020
를 마스킹할 수 있다는 것을 정의한다. 이 경우에서, 블록(805)은 Ji(k)(현재 시간 블록에 의해 마스킹된 에너지)와 (이전의 시간 블록에 의해 마스킹된 에너지)를 비교하고 최대값을 선택한다. 포스트마스킹 프로파일들이 본 문헌에서 이용가능하며, 이것은 경험적 음향심리 실험들을 통해 획득되었다. 큰 Tb(즉 20ms보다 큼)의 경우, 포스트마스킹은 보다 짧은 시간 윈도우들을 갖는 시간/주파수 분해능에 대해서만 적용된다는 것을 유념한다.
요약하면, 블록(805)의 출력에서는 두 개의 상이한 시간/주파수 분해능들에 대해 획득된 각각의 서브대역 및 시간 블록 당 마스킹 임계치들을 갖는다. 임계치들은 주파수와 시간 마스킹 현상 모두를 고려함으로써 획득되었다. 블록(806)에서, 상이한 시간/주파수 분해능들에 대한 임계치들은 병합된다. 예를 들어, 잠재적인 구현은 블록(806)이 비트가 할당되는 시간 및 주파수 간격들에 대응하는 모든 임계치들을 고려하고, 최소값을 선택하는 것이다.
3.2.3 진폭 계산 블록(503)
도 9를 참조바란다. 블록(503)의 입력은 모든 음향심리 동기부여된 계산들이 수행되는 음향심리 모델(502)로부터의 임계치들(505)이다. 진폭 계산기(503)에서, 임계치들과의 추가적인 계산들이 수행된다. 제일 먼저, 진폭 맵핑(901)이 일어난다. 이 블록은 단지 마스킹 임계치들(보통 에너지들로서 표현된다)을 섹션 3.1에서 정의된 비트 쉐이핑 함수를 스케일링하기 위해 이용될 수 있는 진폭들로 전환시킨다. 그 후, 진폭 적응 블록(902)이 구동된다. 이 블록은 마스킹 임계치들이 실제로 충족되도록 워터마크 생성기(101)에서 비트 쉐이핑 함수들을 곱하기 위해 이용되는 진폭들
Figure 112012077510412-pct00022
을 반복적으로 적응화시킨다. 실제로, 이미 논의한 바와 같이, 비트 쉐이핑 함수는 보통 Tb보다 큰 시간 간격 동안 확장된다. 그러므로, 포인트 i,j에서 마스킹 임계치를 충족시키는 정확한 진폭
Figure 112012077510412-pct00023
을 곱하는 것은 포인트 i,j-1에서 요건들을 반드시 충족시킬 필요는 없다. 이것은 강한 개시점들에서 특히 중요한데, 그 이유는 프리에코가 가청적으로 되기 때문이다. 회피할 필요가 있는 또 다른 상황은 상이한 비트들의 꼬리들의 불행스러운 중첩인데, 이것은 가청적 워터마크를 야기시킬 수 있다. 그러므로, 블록(902)은 워터마크 생성기에 의해 생성된 신호를 분석하여 임계치들이 충족되었는지 여부를 체크한다. 충족되지 않은 경우, 이에 따라 진폭들
Figure 112012077510412-pct00024
을 수정한다.
이것은 인코더측을 끝난다. 이하의 섹션들은 수신기(또한 워터마크 디코더로서 지정됨)에서 수행된 프로세싱 단계들을 다룬다.
3.3 분석 모듈(203)
분석 모듈(203)은 워터마크 추출 프로세스의 제1 단계(또는 블록)이다. 이 모듈의 목적은 각각의 스펙트럼 서브대역 i 당 하나씩, 워터마킹된 오디오 신호(200a)를 Nf개의 비트 스트림들
Figure 112012077510412-pct00025
(또한 204로 지정됨)로 되변환시키는 것이다. 이것들은 섹션 3.4와 섹션 3.5에서 각각 논의된 바와 같이, 동기화 모듈(201)과 워터마크 추출기(202)에 의해 추가적으로 프로세싱된다.
Figure 112012077510412-pct00026
는 소프트 비트 스트림들이며, 즉 이것들은 예컨대 임의의 실수값을 취할 수 있고 이 비트에 대한 하드 결정은 아직 행해지지 않았음을 유념하라.
분석 모듈은 도 16에서 도시된 세 개의 부분들, 즉 분석 필터 뱅크(1600), 진폭 정규화 블록(1604) 및 차등 디코딩(1608)으로 구성된다.
3.3.1 분석 필터 뱅크(1600)
워터마킹된 오디오 신호는 도 10a에서 자세하게 도시된 분석 필터 뱅크(1600)에 의해 시간 주파수 영역으로 변환된다. 필터 뱅크의 입력은 수신된 워터마킹된 오디오 신호 r(t)이다. 필터 뱅크의 출력은 i번째 브랜치 또는 시간 인스턴트 j에서의 서브대역에 대한 복소 계수들
Figure 112012077510412-pct00027
이다. 이러한 값들은 중심 주파수 fi와 시간 jTb에서의 신호의 진폭 및 위상에 관한 정보를 포함한다.
필터 뱅크(1600)는 각각의 스펙트럼 서브대역 i 당 하나씩, Nf개의 브랜치들로 구성된다. 각각의 브랜치는 동위상 성분에 대한 상위 서브브랜치와 서브대역 i의 직교 성분에 대한 하위 서브브랜치로 분할된다. 워터마크 생성기에서의 변조 및 이에 따라 워터마킹된 오디오 신호는 완전한 실수값이지만, 채널과 동기화 오정렬에 의해 유도된 변조 성상도의 회전들은 수신기에서 알려져 있지 않기 때문에 수신기에서의 신호의 복소값 분석이 필요하다. 이하에서는, 필터 뱅크의 i번째 브랜치를 고려한다. 동위상 및 직교 서브브랜치를 결합함으로써, 복소값 기저대역 신호
Figure 112012077510412-pct00028
Figure 112012077510412-pct00029
로서 정의할 수 있으며,
여기서 *는 콘볼루션이며,
Figure 112012077510412-pct00030
는 서브대역 i의 수신기 저역통과 필터의 임펄스 응답이다. 매칭된 필터 조건을 충족시키기 위해 보통
Figure 112012077510412-pct00031
i(t)는 변조기(307)에서의 서브대역 i의 기저대역 비트 형성 함수
Figure 112012077510412-pct00032
와 같지만, 다른 임펄스 응답들도 가능하다.
레이트가 1=Tb인 계수들
Figure 112012077510412-pct00033
을 획득하기 위해, 연속적인 출력
Figure 112012077510412-pct00034
이 샘플링되어야 한다. 만약 수신기에 의해 비트들의 정확한 타이밍이 알려졌다면, 레이트가 1=Tb인 샘플링이 충분할 것이다. 하지만, 비트 동기화가 아직 알려져 있지 않기 때문에, 레이트가 Nos/Tb인 샘플링이 수행되며, 여기서 Nos는 분석 필터 뱅크 오버샘플링 인자이다. Nos를 충분히 크게 선택함으로써(예컨대, Nos=4), 적어도 하나의 샘플링 싸이클이 이상적인 비트 동기화에 충분히 가깝게 되는 것을 보장할 수 있다. 최상의 오버샘플링층에 대한 결정이 동기화 프로세스 동안에 행해지며, 이로써 모든 오버샘플링된 데이터가 이후까지 유지된다. 이 프로세스는 섹션 3.4에서 자세하게 설명된다.
i번째 브랜치의 출력에서 계수들
Figure 112012077510412-pct00035
을 가지며, 여기서 j는 비트 갯수 또는 시간 인스턴트를 표시하고 k는 이 단일 비트 내의 오버샘플링 포지션을 표시하며, k = 1; 2;..., Nos이다.
도 10b는 시간 주파수 평면상에서의 계수들의 위치의 예시적인 개략도를 제공한다. 오버샘플링 인자는 Nos = 2 이다. 직사각형들의 높이와 폭은 대응하는 계수
Figure 112012077510412-pct00036
에 의해 표현된 신호의 부분의 대역폭과 시간 간격을 각각 나타낸다.
서브대역 주파수들 fi가 어떠한 간격 △f의 배수들로서 선택되면, 분석 필터 뱅크는 고속 푸리에 변환(FFT)을 이용하여 효율적으로 구현될 수 있다.
3.3.2 진폭 정규화(1604)
일반성을 상실하지 않고서 본 설명을 단순화하기 위해, 이하에서 비트 동기화는 알려지고 Nos = 1이라고 가정한다. 즉, 정규화 블록(1604)의 입력에서 복소 계수들
Figure 112012077510412-pct00037
을 갖는다. 수신기에서는 어떠한 채널 상태 정보도 입수가능하지 않기 때문에(즉, 전파 채널은 미지상태임), 동등 이득 결합(equal gain combining; EGC) 기법이 이용된다. 시간 및 주파수 분산 채널로 인해, 전송된 비트 bi (j)의 에너지는 중심 주파수 fi 및 시간 인스턴트 j 주변에서 발견될 뿐만이 아니라, 인접한 주파수들과 시간 인스턴트들에서도 발견된다. 그러므로, 보다 정확한 가중화를 위해, 주파수들 fi ±n △f에서의 추가적인 계수들이 계산되고 이것은 계수
Figure 112012077510412-pct00038
의 정규화를 위해 이용된다. n = 1이면, 예컨대,
Figure 112012077510412-pct00039
를 갖는다.
n > 1인 경우의 정규화는 위 공식의 간단한 확장이다. 동일한 방식으로 하나 보다 많은 시간 인스턴트를 고려함으로써 소프트 비트들을 정규화하는 것을 택할 수도 있다. 정규화는 각각의 서브대역 i 및 각각의 시간 인스턴트 j에 대해 수행된다. EGC의 실제 결합은 추출 프로세스의 이후 단계들에서 행해진다.
3.3.3 차등 디코딩(1608)
차등 디코딩 블록(1608)의 입력에서, 주파수 fi와 시간 인스턴트 j에서의 신호 성분들의 위상에 관한 정보를 포함한 진폭 정규화된 복소 계수들
Figure 112012077510412-pct00040
을 갖는다. 비트들이 송신기에서 차등적으로 인코딩될 때, 여기서 역 동작이 수행되어야 한다. 소프트 비트들
Figure 112012077510412-pct00041
은 먼저 두 개의 연속적인 계수들의 위상에서의 차이를 계산하고 실수부를 취함으로써 획득된다:
Figure 112012077510412-pct00042
Figure 112012077510412-pct00043
이것은 각각의 서브대역마다 개별적으로 수행되어야 하는데 그 이유는 채널은 보통 각각의 서브대역에서 상이한 위상 회전들을 도입시키기 때문이다.
3.4 동기화 모듈(201)
동기화 모듈의 업무는 워터마크의 시간적 정렬을 찾는 것이다. 디코더를 인코딩된 데이터에 대해 동기화하는 문제는 두개 부분이 존재한다. 첫번째 단계에서, 분석 필터뱅크는 인코딩된 데이터와 정렬되어야 하는데, 즉 변조기에서의 합성에서 이용된 비트 쉐이핑 함수들
Figure 112012077510412-pct00044
은 분석을 위해 이용된 필터들
Figure 112012077510412-pct00045
과 정렬되어야 한다. 이 문제는 도 12a에서 도시되며, 이 도면에서는 분석 필터들이 합성 필터들과 동일하다. 상단부에서, 세 개의 비트들이 보여진다. 단순화를 위해, 세 개 비트들 모두에 대한 파형들은 실척도로 도시되지 않는다. 상이한 비트들간의 시간적 오프셋은 Tb이다. 바닥부는 디코더에서의 동기화 쟁점을 나타내며, 필터는 상이한 시간 인스턴트들에서 적용될 수 있지만, 적색(곡선 1299a)으로 표시된 포지션만이 정확하며 최상의 신호 대 잡음비(SNR)와 신호 대 간섭비(SIR)로 첫번째 비트를 추출할 수 있게 한다. 실제로, 정확하지 않은 정렬은 SNR과 SIR 모두의 저하를 야기시킬 것이다. 이러한 첫번째 정렬 쟁점을 "비트 동기화"라고 칭한다. 비트 동기화가 달성되면, 비트들은 최적화되어 추출될 수 있다. 하지만, 메시지를 정확하게 디코딩하기 위해, 어느 비트에서 새로운 메시지가 시작하는지를 알 필요가 있다. 이 쟁점사항은 도 12b에서 도시되며, 이것은 메시지 동기화로서 칭해진다. 디코딩된 비트들의 스트림에서 적색(포지션 1299b)에서 표시된 시작 포지션만이 정확하며 k번째 메시지를 디코딩할 수 있게 해준다.
먼저 메시지 동기화만을 다룬다. 섹션 3.1에서 설명된 동기화 시그너처는 워터마크에서 연속적으로 및 주기적으로 임베딩된 미리결정된 순서의 Ns개 시퀀스들로 구성된다. 동기화 모듈은 동기화 시퀀스들의 시간적 정렬을 인출할 수 있다. 크기 Ns에 의존하여, 도 12c와 도 12d에서 각각 도시된 두 개의 동작 모드들간을 구별할 수 있다.
완전 메시지 동기화 모드(도 12c)에서는 Ns = Nm/Rc를 갖는다. 도면에서의 단순화를 위해 Ns = Nm/Rc = 6 이며, 시간 확산은 없는 것(즉, Nt = 1)으로 가정한다. 설명을 위해 이용된 동기화 시그너처가 메시지들 아래에서 도시된다. 현실에서는, 이것들은 섹션 3.1에서 설명한 바와 같이, 코딩된 비트들 및 주파수 확산 시퀀스들에 따라 변조된다. 이 모드에서, 동기화 시그너처의 주기성은 메시지들의 주기성과 동일하다. 그러므로 동기화 모듈은 동기화 시그너처의 시간적 정렬을 찾아냄으로써 각각의 메시지의 시작부분을 식별할 수 있다. 새로운 동기화 시그너처가 시작하는 시간적 포지션들을 동기화 히트들이라고 칭한다. 그 후 동기화 히트들은 워터마크 추출기(202)에 전달된다.
두번째 잠재적인 모드, 즉 부분적 메시지 동기화 모드(도 12d)가 도 12d에서 도시된다. 이 경우에서 Ns < Nm = Rc 이다. 본 도면에서는 Ns = 3을 취하였고, 이로써 세 개의 동기화 시퀀스들이 각각의 메세지마다 두 번씩 반복된다. 메시지들의 주기성은 동기화 시그너처의 주기성의 배수가 될 필요는 없다는 것을 유념한다. 이 동작 모드에서는, 모든 동기화 히트들이 메시지의 시작부분에 대응하는 것은 아니다. 동기화 모듈은 히트들간의 구별 수단을 갖지 않으며, 이 업무는 워터마크 추출기(202)에게 주어진다.
동기화 모듈의 프로세싱 블록들이 도 11a와 도 11b에서 도시되어 있다. 동기화 모듈은 동기화 시그너처 상관기(1201)의 출력을 분석함으로써 동시에 비트 동기화와 (완전 또는 부분적) 메시지 동기화를 수행한다. 시간/주파수 영역(204)에서의 데이터는 분석 모듈에 의해 제공된다. 비트 동기화는 아직 이용가능하지 않으므로, 섹션 3.3에서 기술된 바와 같이, 블록(203)은 인자 Nos로 데이터를 오버샘플링한다. 입력 데이터의 설명은 도 12e에서 주어진다. 이 예시의 경우 Nos = 4, Nt = 2, 및 Ns = 3를 취한다. 다시 말하면, 동기화 시그너처는 3개의 시퀀스들(a, b, c로 표시됨)로 구성된다. 시간 확산은, 이 경우에서 확산 시퀀스 ct = [11]T를 가지면서, 시간 영역에서 각 비트를 두 번씩 단순 반복한다. 정확한 동기화 히트들이 화살표로 표시되며 이것은 각각의 동기화 시그너처의 시작부분에 대응한다. 동기화 시그너처의 주기는 NtㆍNosㆍNs = Nsbl이며, 예를 들면 2ㆍ4ㆍ3 = 24이다. 동기화 시그너처의 주기성으로 인해, 동기화 시그너처 상관기(1201)는 탐색 블록들이라고 칭해지는, Nsbl(여기서 아래첨자는 탐색 블록 길이를 나타낸다) 크기의 블록들로 시간 축을 임의적으로 분할한다. 도 12f에서 도시된 바와 같이 모든 탐색 블록은 하나의 동기화 히트를 포함(또는 일반적으로 포함)해야 한다. Nsbl개 비트들 각각은 후보 동기화 히트이다. 블록(1201)의 업무는 각 블록의 후보 비트 각각마다 우도(likelihood) 수치를 계산하는 것이다. 그 후 이 정보는 동기화 히트들을 계산하는 블록(1204)으로 전달된다.
3.4.1 동기화 시그너처 상관기 (1201)
Nsbl개 후보 동기화 포지션들 각각에 대해 동기화 시그너처 상관기는 우도 수치를 계산하며, 우도 수치가 클수록 시간적 정렬(비트 동기화 및 부분적 또는 완전 메시지 동기화)이 발견될 가능성은 커진다. 프로세싱 단계들이 도 12g에서 도시된다.
이에 따라, 상이한 포지션 선택들과 연계된 우도 값들의 시퀀스(1201a)가 획득될 수 있다.
블록(1301)은 시간적 역확산을 수행하며, 즉 모든 Nt개의 비트들을 시간적 확산 시퀀스 ct로 곱한 다음에 이것들을 합한다. 이것은 Nf개 주파수 서브대역들 각각마다 수행된다. 도 13a는 예시를 도시한다. 이전 섹션에서 기술된 바와 같이 동일한 파라미터들, 즉 Nos = 4, Nt = 2, 및 Ns = 3를 취한다. 후보 동기화 포지션이 표시된다. 이러한 비트로부터, Nos 오프셋을 가지면서, 블록(1301) 및 시퀀스 ct를 갖는 시간 역확산에 의해 NtㆍNs개가 취해지고, 이로써 Ns개 비트들이 남겨진다.
블록(1302)에서 비트들은 Ns개 확산 시퀀스들과 엘리먼트별로 곱해진다(도 13b를 참조한다).
블록(1303)에서 주파수 역확산이 수행되며, 즉 각각의 비트는 확산 시퀀스 cf와 곱해진 후 주파수를 따라 합해진다.
이 경우에서, 만약 동기화 포지션이 정확하였다면, Ns개의 디코딩된 비트들을 가졌을 것이다. 비트들은 수신기에게 알려져 있지 않으므로, 블록(1304)은 Ns개 값들의 절대값들을 취하여 우도 수치를 계산하고 이들을 합한다.
블록(1304)의 출력은 원칙적으로는 동기화 시그너처를 찾는 비코히어런트 상관기이다. 실제로, 작은 Ns를 선택할 때, 즉 부분적 메시지 동기화 모드를 선택할 때, 상호직교하는 동기화 시퀀스들(예컨대, a, b, c)을 이용하는 것이 가능하다. 이렇게 함으로써, 상관기가 시그너처와 정확하게 정렬되지 않는 경우에, 상관기의 출력은 매우 작을 것이며, 이상적으로는 제로일 것이다. 완전 메시지 동기화 모드를 이용하는 경우 가능한 한 많은 직교 동기화 시퀀스들을 이용하고, 그런 후 이러한 시퀀스들이 이용되는 순서를 신중하게 선택함으로써 시그너처를 생성하는 것이 권장된다. 이 경우, 우수한 자기상관 함수들을 통해 시퀀스들을 확산시키고자 할 때와 동일한 이론이 적용될 수 있다. 상관기가 약간 오정렬된 경우, 상관기의 출력은 이상적인 경우에서 조차도 제로가 아닐 것이지만, 분석 필터들은 신호 에너지를 최적으로 캡쳐할 수 없으므로, 완벽한 정렬과 비교하여 작을 것이다.
3.4.2 동기화 히트 계산(1204)
이 블록은 동기화 시그너처 상관기의 출력을 분석하여 동기화 포지션들이 어디에 있는지를 결정한다. 시스템은 Tb/4까지의 오정렬들에 대해서도 꽤 견고하고 Tb는 보통 대략 40ms로 취해지므로, 보다 안정적인 동기화를 달성하기 위해 시간에 걸쳐 1201의 출력을 적분시키는 것이 가능하다. 이것의 잠재적인 구현은 지수함수적으로 감쇠하는 임펄스 응답을 가지면서 시간을 따라 적용되는 IIR 필터에 의해 주어진다. 이와 달리, 전통적인 FIR 이동 평균 필터가 적용될 수 있다. 평균화가 수행되면, 상이한 NtㆍNs를 따른 제2 상관이 수행된다("상이한 포지션 선택"). 실제로, 동기화 함수의 자기상관 함수가 알려진 정보를 활용하기를 원한다. 이것은 최대 우도 추정기(Maximum Likelihood estimator)에 대응한다. 이러한 아이디어는 도 13c에서 도시된다. 곡선은 시간적 적분 이후의 블록(1201)의 출력을 도시한다. 동기화 히트를 결정하는 한가지 가능성은 단순히 이 함수의 최대값을 발견하는 것이다. 도 13d에서는 동일한 함수(검정색)가 동기화 시그너처의 자기상관함수로 필터링된 것을 살펴본다. 결과적인 함수는 적색으로 도식화된다. 이 경우에서 최대값은 보다 많이 두드러지고 동기화 히트의 포지션을 가져다준다. 두 개의 방법들은 높은 SNR로 인해 꽤 유사하지만 두번째 방법은 보다 낮은 SNR 체제에서 훨씬 잘 수행된다. 동기화 히트들이 발견되면, 이 히트들은 데이터를 디코딩하는 워터마크 추출기(202)에 전달된다.
몇몇의 실시예들에서, 견고한 동기화 신호를 획득하기 위해, 동기화는 짧은 동기화 시그너처들을 갖고서 부분적 메시지 동기화 모드에서 수행된다. 이러한 이유로 많은 디코딩들이 행해져야 하는데, 이것은 긍정 오류(false positive) 메시지 검출의 위험성을 증가시킨다. 이것을 방지하기 위해, 몇몇의 실시예들에서는 시그널링 시퀀스들이 메시지들내로 삽입될 수 있고 그 결과로 보다 낮은 비트 레이트가 야기된다.
이러한 접근법은 메시지보다 짧은 동기 시그너처로부터 발생한 문제에 대한 해결책인데, 이것은 강화된 동기화의 위 설명에서 이미 다루었다. 이 경우, 디코더는 새로운 메시지가 시작하는 곳을 모르며 여러 개의 동기화 포인트들에서 디코딩하려고 시도를 한다. 적법한 메시지들과 긍정 오류들을 구별하기 위해, 몇몇의 실시예들에서는 시그널링 워드가 이용된다(즉, 알려진 제어 시퀀스를 임베딩하기 위해 페이로드는 희생된다). 몇몇의 실시예들에서는, (대안적으로 또는 이에 더하여) 적법한 메시지들과 긍정 오류들을 구별하기 위해 타당성 체크(plausibility check)가 이용된다.
3.5 워터마크 추출기(202)
워터마크 추출기(202)를 구성하는 부분들이 도 14에서 도시된다. 이것은 두 개의 입력들, 즉 블록들(203, 201)로부터의 각각의 입력들(204, 205)을 갖는다. 동기화 모듈(201)(섹션 3.4를 참조한다)은 동기화 타임스탬프, 즉 후보 메시지가 시작하는 시간 영역에서의 포지션들을 제공한다. 이 문제에 관한 보다 세부사항들은 섹션 3.4에서 주어진다. 한편, 분석 필터뱅크 블록(203)은 디코딩될 준비가 되어 있는 시간/주파수 영역에서의 데이터를 제공한다.
첫번째 프로세싱 단계에서, 데이터 선택 블록(1501)은 입력(204)으로부터, 디코딩될 후보 메시지로서 식별된 부분을 선택한다. 도 15는 이 프로시저를 도식화하여 도시한다. 입력(204)은 Nf개의 실수값들의 스트림들로 구성된다. 시간 정렬은 디코더에 선험적으로 알려져 있지 않기 때문에, 분석 블록(203)은 1/Tb Hz보다 높은 레이트(오버샘플링)로 주파수 분석을 수행한다. 도 15에서는 오버샘플링 인자 4를 이용하였는데, 즉 Nf x 1 크기의 4개 벡터들이 매 Tb초마다 출력된다. 동기화 블록(201)이 후보 메시지를 식별할 때, 동기화 블록(201)은 후보 메시지의 시작 포인트를 표시하는 타임스탬프(205)를 전달한다. 선택 블록(1501)은 디코딩에 필요한 정보, 즉 Nf x Nm/Rc 크기의 행렬을 선택한다. 이 행렬(1501a)은 추가적인 프로세싱을 위해 블록(1502)에 주어진다.
블록들(1502, 1503, 1504)은 섹션 3.4에서 설명된 블록들(1301, 1302, 1303)과 동일한 동작들을 수행한다.
본 발명의 대안적인 실시예는 동기화 모듈이 또한 디코딩될 데이터를 전달하도록 함으로써 블록들(1502~1504)에서 행해지는 계산들을 회피하는 것으로 구성된다. 개념적으로 이것은 상세사항이다. 구현 관점으로부터, 버퍼들이 어떻게 실현되는지만이 문제가 된다. 일반적으로, 계산들을 다시 행하는 것은 보다 작은 버퍼들을 갖도록 해준다.
채널 디코더(1505)는 블록(302)의 역동작을 수행한다. 이 모듈의 잠재적인 실시예에서 채널 인코더가 인터리버와 함께 콘볼루션 인코더로 구성되면, 채널 디코더는 예컨대 잘 알려진 비터비 알고리즘을 통해 디인터리빙과 콘볼루션 디코딩을 수행할 것이다. 이 블록의 출력에서는 Nm개의 비트들, 즉 후보 메시지를 갖는다.
블록(1506), 즉 시그널링 및 타당성 블록은, 입력 후보 메시지가 진정한 메시지인지 아닌지 여부를 결정한다. 이렇게 하기 위해서는, 상이한 전략들이 가능하다.
기본적인 아이디어는 진본 메시지와 위본 메시지를 구별하기 위해 (CRC 시퀀스와 같은) 시그널링 워드를 이용하는 것이다. 하지만, 이것은 페이로드로서 이용가능한 비트들의 갯수를 감소시킨다. 대안적으로 타당성 체크를 이용할 수 있다. 예컨대 메시지가 타임스탬프를 포함하는 경우, 연속적인 메시지들은 연속적인 타임스탬프들을 가져야 한다. 디코딩된 메시지가 정확한 순서가 아닌 타임스탬프를 보유한 경우, 이 메시지를 폐기할 수 있다.
메시지가 정확하게 검출된 경우 시스템은 미리보기 및/또는 되돌아보기 메커니즘들을 적용할 것을 선택할 수 있다. 비트 및 메시지 동기화 모두는 달성된 것으로 가정한다. 사용자가 재핑(zapping) 중에 있지 않다라고 가정하에, 시스템은 시간적으로 되돌아보고 동일한 동기화 포인트를 이용하여 (아직 디코딩되지 않은 경우에) 과거 메시지들을 디코딩하려고 시도한다(되돌아보기 접근법). 이것은 시스템이 시동될 때 특히 유용하다. 더군다나, 불량한 조건들에서는 동기화를 달성하기 위해 2개의 메시지들을 취할 수 있다. 이 경우에서, 제1 메시지는 기회를 갖지 않는다. 되돌아보기 옵션으로, 백 동기화로 인해서만 수신되지 않았던 "양호한" 메시지들을 저장할 수 있다. 미리보기도 동일하되 미래에 작업을 한다. 현재 메시지를 갖고 있는 경우 다음 메시지는 어디에 있어야 하는지를 알 것이며, 이것을 임의의 방법으로 디코딩하려고 시도할 수 있다.
3.6. 동기화 세부사항들
페이로드의 인코딩을 위해, 예컨대 비터비 알고리즘이 이용될 수 있다. 도 18a는 페이로드(1810), 비터비(Viterbi) 종단 시퀀스(1820), 비터비 인코딩된 페이로드(1830) 및 비터비 코딩된 페이로드의 반복 코딩된 버전(1840)의 그래픽 표현을 도시한다. 예를 들어, 페이로드 길이는 34개 비트들일 수 있고 비터비 종단 시퀀스는 6개 비트들을 포함할 수 있다. 예컨대, 1/7의 비터비 코드 레이트가 이용되는 경우, 비터비 코딩된 페이로드는 (34+6)*7=280개 비트들을 포함할 수 있다. 더 나아가, 1/2의 반복 코딩을 이용함으로써, 비터비 인코딩된 페이로드(1830)의 반복 코딩된 버전(1840)은 280*2=560개 비트들을 포함할 수 있다. 이 예시에서, 42.66ms의 비트 시간 간격을 고려하면, 메시지 길이는 23.9s일 것이다. 신호는 도 18b에서 도시된 주파수 스펙트럼에 의해 나타난 바와 같이 1.5kHz에서 6kHz까지의 9개의 서브캐리어들(예컨대, 임계 대역들에 따라 배치됨)로 임베딩될 수 있다. 대안적으로, 0kHz와 20kHz사이의 주파수 범위 내의 또 다른 갯수의 서브캐리어들(예컨대, 4개, 6개, 12개, 15개 또는 2개와 20개 사이의 임의의 갯수)이 또한 이용될 수 있다.
도 19는 ABC 싱크라고도 불리우는 동기화를 위한 기본적인 개념(1900)의 개략도를 도시한다. 도 19는 코딩되지 않은 메시지(1910), 코딩된 메시지(1920), 동기화 시퀀스(싱크 시퀀스)(1930)의 개략도뿐만이 아니라 서로 이어진 여러 개의 메시지들(1920)에 대한 싱크의 적용을 도시한다.
(도 19 내지 도 23에서 도시된) 이러한 동기화 개념의 설명과 관련하여 언급한 동기화 시퀀스 또는 싱크 시퀀스는 앞서 언급한 동기화 시그너처와 동일할 수 있다.
더 나아가, 도 20은 싱크 시퀀스와 상관시킴으로써 발견된 동기화의 개략도를 도시한다. 동기화 시퀀스(1930)가 메시지보다 짧은 경우, 하나보다 많은 동기화 포인트(1940)(또는 정렬 시간 블록)가 단일 메시지 내에서 발견될 수 있다. 도 20에서 도시된 예시에서는, 각각의 메시지 내에서 4개의 동기화 포인트들이 발견된다. 그러므로, 발견된 각각의 동기화마다, 비터비 디코더(비터비 디코딩 시퀀스)가 작동될 수 있다. 이러한 방식으로, 도 21에서 도시된 바와 같이, 각각의 동기화 포인트(1940)마다 메시지(2110)가 획득될 수 있다.
이러한 메시지들에 기초하여 진본 메시지들(2210)이, 도 22에서 도시된 바와 같이, CRC 시퀀스(순환 리던던시 체크 시퀀스) 및/또는 타당성 체크를 통해 식별될 수 있다.
CRC 검출(순환 리던던시 체크 검출)은 알려진 시퀀스를 이용하여 긍정 오류로부터 진본 메시지들을 식별할 수 있다. 도 23은 페이로드의 끝에 추가된 CRC 시퀀스에 대한 예시를 도시한다.
긍정 오류(잘못된 동기화 포인트에 기초하여 생성된 메시지)의 발생가능성은 CRC 시퀀스의 길이 및 작동된 비터비 디코더들의 갯수(단일 메시지 내의 동기화 포인트들의 갯수)에 좌우될 수 있다. 긍정 오류의 발생가능성을 증가시키지 않고서 페이로드의 길이를 증가시키기 위해, 타당성이 활용될 수 있거나(타당성 테스트) 또는 동기화 시퀀스(동기화 시그너처)의 길이가 증가될 수 있다.
4. 개념들 및 장점들
이하에서는, 혁신적인 것으로서 간주되는, 앞서 논의한 시스템의 몇몇의 양태들을 설명할 것이다. 또한, 최신의 기술들에 대한 이러한 양태들의 관계를 논의할 것이다.
4.1. 연속적인 동기화
몇몇의 실시예들은 연속적인 동기화를 가능하게 해준다. 동기화 시그너처로서 표시되는 동기화 신호는 송수신측 모두에 대해 알려진 시퀀스들(이것은 또한 동기화 확산 시퀀스들로서 지정된다)과의 곱셈을 통해 데이터에 대해 연속적이고 병렬적으로 임베딩된다.
몇몇의 통상적인 시스템들은 (데이터용으로 이용된 심볼들 이외의 다른) 특수한 심볼들을 이용하는 반면에, 본 발명에 따른 몇몇 실시예들은 이러한 특수한 심볼들을 이용하지 않는다. 다른 고전적인 방법들은 데이터와 시간 멀티플렉싱된 비트들(프리앰블)의 알려진 시퀀스를 임베딩하거나 또는 데이터와 주파수 멀티플렉싱된 신호를 임베딩하는 것으로 구성된다.
하지만, 동기화를 위해 전용 서브대역들을 이용하는 것은, 이들 주파수들에서 채널이 노치들을 가질 수 있으므로, 동기화를 신뢰할 수 없도록 만든다는 것이 발견되었다. 프리앰블 또는 특수한 심볼이 데이터와 시간 멀티플렉싱되는 다른 방법들과 비교하여, 여기서 설명된 방법은 (예컨대 이동으로 인한) 동기화 변동들을 연속적으로 추적할 수 있도록 해주므로 여기서 설명된 방법이 보다 유리하다.
더군다나, 워터마크 신호의 에너지는 (예컨대, 확산 정보 표현 내로의 워터마크의 곱셈방식 도입에 의해) 변동되지 않으며, 동기화는 음향심리 모델 및 데이터 레이트로부터 독립적으로 설계될 수 있다. 동기화의 견고성을 결정하는, 동기화 시그너처의 시간 길이는 데이터 레이트와 완전히 독립적으로 자유롭게 설계될 수 있다.
또 다른 고전적인 방법은 데이터와 코드 멀티플렉싱된 동기화 시퀀스를 임베딩하는 것으로 구성된다. 이러한 고전적인 방법과 비교하여, 여기서 설명된 방법의 장점은 데이터의 에너지가 상관 계산에서 간섭 인자를 표현하지 않아서 보다 견고함을 가져다 준다는 점이다. 더군다나, 코드 멀티플렉싱을 이용할 때, 동기화를 위해 이용가능한 직교 시퀀스들은 그 일부만이 데이터를 위해 필요하기 때문에 그 갯수는 감소된다.
요약하면, 여기서 설명한 연속적인 동기화 접근법은 통상적인 개념들에 비해 방대한 수의 장점들을 가져다준다.
하지만, 본 발명에 따른 몇몇 실시예들에서는, 이와 다른 동기화 개념이 적용될 수 있다.
4.2. 2D 확산
제안된 시스템의 몇몇 실시예들은 시간 및 주파수 영역 모두에서의 확산, 즉 2차원 확산(간략히 2D 확산이라고 지정된다)을 수행한다. 이것은, 예컨대 시간 영역에서 리던던스를 추가함으로써 비트 에러 레이트가 한층 더 감소될 수 있기 때문에, 1D 시스템들에 비해 유리하다는 것이 발견되었다.
하지만, 본 발명에 따른 몇몇 실시예들에서는, 이와 다른 확산 개념이 적용될 수 있다.
4.3. 차등 인코딩 및 차등 디코딩
본 발명에 따른 몇몇 실시예들에서, (통상적인 시스템들과 비교할 때) 로컬 오실레이터들의 이동 및 주파수 미스매치에 대한 증가된 견고성이 차등 변조에 의해 초래된다. 실제로, 도플러 효과(이동) 및 주파수 미스매치들은 BPSK 성상도의 회전(다시 말하면, 비트들의 복소 평면상에서의 회전)을 야기시킨다는 것이 발견되었다. 몇몇의 실시예들에서, BPSK 성상도(또는 임의의 다른 적절한 변조 성상도)의 이러한 회전의 악영향은 차등 인코딩 또는 차등 디코딩을 이용함으로써 회피된다.
하지만, 본 발명에 따른 몇몇 실시예들에서는, 이와 다른 인코딩 개념 또는 디코딩 개념이 적용될 수 있다. 또한, 몇몇의 경우들에서는, 차등 인코딩이 생략될 수 있다.
4.4 비트 쉐이핑
본 발명에 따른 몇몇 실시예들에서, 비트 쉐이핑은 시스템 성능의 상당한 개선을 불러일으키는데, 그 이유는 비트 쉐이핑에 적응된 필터를 이용함으로써 검출의 신뢰도가 증가될 수 있기 때문이다.
몇몇 실시예들에 따르면, 워터마킹과 관련한 비트 쉐이핑의 활용은 워터마킹 프로세스의 향상된 신뢰도를 불러일으킨다. 만약 비트 쉐이핑 함수가 비트 간격보다 긴 경우에 특별히 우수한 결과들이 획득될 수 있다는 것이 발견되었다.
하지만, 본 발명에 따른 몇몇 실시예들에서는, 이와 다른 비트 쉐이핑 개념이 적용될 수 있다. 또한, 몇몇의 경우들에서는, 비트 쉐이핑이 생략될 수 있다.
4.5. 음향심리 모델( Psychoacoustic Model ; PAM ) 및 필터 뱅크( Filter Bank ; FB) 합성간의 상호작용
몇몇의 실시예들에서, 음향심리 모델은 비트들에 곱해지는 진폭들을 미세조정하기 위해 변조기와 상호작용한다.
하지만, 몇몇의 다른 실시예들에서, 이러한 상호작용은 생략될 수 있다.
4.6. 미리보기 및 되돌아보기 특징들
몇몇의 실시예들에서, 소위 말하는 "되돌아보기"와 "미리보기" 접근법들이 적용된다.
이하에서는, 이러한 개념들을 간략하게 요약할 것이다. 메시지가 정확하게 디코딩된 경우에는, 동기화가 달성되었다라고 가정된다. 사용자가 재핑(zapping) 중에 있지 않는 것으로 가정하면, 몇몇의 실시예들에서, 시간상 되돌아보기가 수행되고 동일한 동기화 포인트를 이용하여 (아직 디코딩되지 않은 경우에) 과거 메시지들을 디코딩하려는 것이 시도된다(되돌아보기 접근법). 이것은 시스템이 시동될 때 특히 유용하다.
불량한 조건들에서는 동기화를 달성하기 위해 2개의 메시지들을 취할 수 있다. 이 경우, 통상적인 시스템들에서 제1 메시지는 기회를 갖지 않는다. 본 발명의 몇몇 실시예들에서 이용된, 되돌아보기 옵션으로, 백 동기화로 인해서만 수신되지 않았던 "양호한" 메시지들을 저장(또는 디코딩)하는 것이 가능하다.
미리보기도 동일하되 미래에 작업을 한다. 현재 메시지를 갖고 있는 경우 다음 메시지는 어디에 있어야 하는지를 알 것이며, 이것을 임의의 방법으로 디코딩하려고 시도할 수 있다. 이에 따라, 오버랩핑 메시지들이 디코딩될 수 있다.
하지만, 본 발명에 따른 몇몇 실시예들에서는, 미리보기 특징 및/또는 되돌아보기 특징이 생략될 수 있다.
4.7. 증가된 동기화 견고성
몇몇의 실시예들에서, 견고한 동기화 신호를 획득하기 위해, 동기화는 짧은 동기화 시그너처들을 갖고서 부분적 메시지 동기화 모드에서 수행된다. 이러한 이유로 많은 디코딩들이 행해져야 하는데, 이것은 긍정 오류(false positive) 메시지 검출의 위험성을 증가시킨다. 이것을 방지하기 위해, 몇몇의 실시예들에서는 시그널링 시퀀스들이 메시지들내로 삽입될 수 있고 그 결과로 보다 낮은 비트 레이트가 야기된다.
하지만, 본 발명에 따른 몇몇 실시예들에서는, 동기화 견고성을 개선시키기 위해 이와 다른 개념이 적용될 수 있다. 또한, 몇몇의 경우들에서, 동기화 견고성을 증가시키기 위한 임의의 개념들의 활용은 생략될 수 있다.
4.8. 다른 강화책들
이하에서는, 배경기술과 관련하여 위에서 설명된 시스템의 몇몇의 다른 일반적 강화책들이 제안되고 논의될 것이다:
1. 보다 낮은 계산적 복잡성
2. 보다 나은 음향심리 모델로 인한 보다 나은 오디오 퀄리티
3. 협대역 멀티캐리어 신호들로 인한 반향 환경에서의 보다 큰 견고성
4. 몇몇 실시예들에서는 SNR 추정이 회피된다. 이것은 특히 낮은 SNR 체제들에서 보다 나은 견고성을 가능하게 해준다.
본 발명에 따른 몇몇 실시예들은, 다음과 같은 이유들로 인해, 예컨대 8Hz의 매우 좁은 대역폭들을 이용하는 통상적인 시스템들보다 우수하다:
1. 8Hz 대역폭(또는 이와 유사한 매우 좁은 대역폭)은 매우 긴 시간 심볼들을 필요로 하는데 그 이유는 음향심리 모델은 매우 적은 에너지로 비가청적이 되도록 해줄 수 있기 때문이다.
2. 8Hz(또는 이와 유사한 매우 좁은 대역폭)은 시스템이 시변 도플러 스펙트럼에 대해 민감해지도록 한다. 이에 따라, 이러한 협대역 시스템은 일반적으로 예컨대 손목시계에서 구현될 정도로 충분히 우수하지 못하다.
본 발명에 따른 몇몇 실시예들은 다음과 같은 이유들로 인해 다른 기술들보다 우수하다:
1. 에코를 입력하는 기술들은 반향 룸들에서는 완전히 실패를 한다. 이와 대조적으로, 본 발명의 몇몇 실시예들에서는, 에코의 도입이 회피된다.
2. 오직 시간 확산만을 이용하는 기술들은, 예컨대 시간 및 주파수 모두에서의 이차원 확산이 이용되는 앞서 기술된 시스템의 실시예들과 비교하여 보다 긴 메시지 지속기간을 갖는다.
본 발명에 따른 몇몇 실시예들은 DE 196 40 814에서 기술된 시스템보다 우수한데, 그 이유는 상기 문헌에 따른 시스템의 아래와 같은 단점들 중 하나 이상이 극복되기 때문이다:
Figure 112012077510412-pct00046
DE 196 40 814에 따른 디코더에서의 복잡성은 매우 높으며, 2N 길이(N = 128)의 필터가 이용된다
Figure 112012077510412-pct00047
DE 196 40 814에 따른 시스템은 긴 메시지 지속기간을 포함한다
Figure 112012077510412-pct00048
DE 196 40 814에 따른 시스템에서는 비교적 높은 확산 이득(예컨대, 128)을 갖고 시간 영역에서만 확산이 일어난다
Figure 112012077510412-pct00049
DE 196 40 814에 따른 시스템에서는 신호가 시간 영역에서 생성되어, 스펙트럼 영역으로 변환되고, 가중화되고, 다시 시간 영역으로 변환되어, 오디오에 겹쳐지는데, 이것은 시스템을 매우 복잡하게 한다.
5. 응용들
본 발명은 디지털 데이터를 은닉시키기 위해 오디오 신호를 수정하는 방법 및 수정된 오디오 신호의 인지된 퀄리티가 원래의 신호와 구분이 안되는 상태로 남아 있도록 하면서 이 정보를 인출할 수 있는 대응하는 디코더를 포함한다.
본 발명의 잠재적인 응용들의 예시들은 아래와 같이 주어진다:
1. 브로드캐스트 모니터링: 예컨대 스테이션 및 시간에 관한 정보를 함유한 워터마크는 라디오 또는 텔레비젼 프로그램들의 오디오 신호에서 은닉된다. 테스트 객체들에 의해 착용된 작은 디바이스들에 병합된 디코더들은 워터마크를 인출할 수 있고, 이에 따라 광고 에이전시들, 즉 이러한 프로그램을 시청했던 자들 및 시청한 때에 관한 값진 정보를 수집할 수 있다.
2. 감사(Auditing): 워터마크는 예컨대 광고들속에 은닉될 수 있다. 일정한 스테이션의 전송들을 자동적으로 모니터링함으로써 언제 광고가 방송되었는지를 정확하게 아는 것이 가능하다. 마찬가지 방식으로, 상이한 라디오들의 프로그래밍 스케쥴들에 관한 통계적 정보, 예컨대 어떠한 음악 작품이 얼마나 자주 재생되는지 등을 인출해내는 것이 가능하다.
3. 메타데이터 임베딩: 제안된 방법은 음악 작품 또는 프로그램에 관한 디지털 정보, 예컨대 음악 작품의 명칭 및 작곡자 또는 프로그램의 지속기간 등을 은닉시키기 위해 이용될 수 있다.
6. 구현 대안들
비록 몇몇 양태들은 장치의 관점에서 설명되었지만, 이러한 양태들은 또한 대응 방법의 설명을 나타낸다는 것이 명백하며, 여기서 블록 또는 디바이스는 방법 단계 또는 방법 단계의 특징에 대응한다. 마찬가지로, 방법 단계의 관점에서 설명된 양태들은 또한 대응하는 장치의 대응하는 블록 또는 아이템 또는 특징의 설명을 나타낸다. 방법 단계들 모두 또는 그 일부는 예컨대, 마이크로프로세서, 프로그램가능 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 이것을 이용하여) 실행될 수 있다. 몇몇 실시예들에서, 가장 중요한 방법 단계들 중의 몇몇의 하나 이상의 방법 단계들은 이러한 장치에 의해 실행될 수 있다.
본 발명의 인코딩된 워터마크 신호, 또는 워터마크 신호가 임베딩되어 있는 오디오 신호는, 디지털 저장 매체상에 저장될 수 있거나 또는 인터넷과 같은 무선 전송 매체 또는 유선 전송 매체와 같은 전송 매체를 통해 전송될 수 있다.
일정한 구현 요건에 따라, 본 발명의 실시예들은 하드웨어나 소프트웨어로 구현될 수 있다. 이러한 구현은 전자적으로 판독가능한 제어 신호들이 저장되어 있으며, 각각의 방법이 수행되도록 프로그램가능한 컴퓨터 시스템과 협동하는(또는 이와 협동가능한) 디지털 저장 매체, 예컨대 플로피 디스크, DVD, 블루레이, CD, ROM, PROM, EPROM, EEPROM 또는 FLASH 메모리를 이용하여 수행될 수 있다. 그러므로, 디지털 저장 매체는 컴퓨터로 판독가능할 수 있다.
본 발명에 따른 몇몇의 실시예들은 여기서 설명된 방법들 중 하나의 방법이 수행되도록, 프로그램가능한 컴퓨터 시스템과 협동할 수 있는 전자적으로 판독가능한 제어 신호들을 갖는 데이터 캐리어를 포함한다.
일반적으로, 본 발명의 실시예들은 컴퓨터 프로그램 제품이 컴퓨터 상에서 구동될 때 본 방법들 중 하나의 방법을 수행하기 위해 동작되는 프로그램 코드를 갖는 컴퓨터 프로그램 제품으로서 구현될 수 있다. 프로그램 코드는 예컨대 머신 판독가능한 캐리어 상에 저장될 수 있다.
다른 실시예들은 머신 판독가능한 캐리어 상에서 저장되는, 여기서 설명된 방법들 중 하나의 방법을 수행하기 위한 컴퓨터 프로그램을 포함한다.
다시 말하면, 본 발명의 방법의 실시예는, 따라서, 컴퓨터 상에서 컴퓨터 프로그램이 구동될 때, 여기서 설명된 방법들 중 하나의 방법을 수행하기 위한 프로그램 코드를 갖는 컴퓨터 프로그램이다.
본 발명의 방법들의 추가적인 실시예는, 이에 따라 여기서 설명된 방법들 중 하나의 방법을 수행하기 위한 컴퓨터 프로그램이 기록되어 있는 데이터 캐리어(또는 디지털 저장 매체, 또는 컴퓨터 판독가능한 매체)이다.
본 발명의 방법의 추가적인 실시예는, 이에 따라 여기서 설명된 방법들 중 하나의 방법을 수행하기 위한 컴퓨터 프로그램을 표현한 신호들의 시퀀스 또는 데이터 스트림이다. 신호들의 시퀀스 또는 데이터 스트림은 데이터 통신 접속, 예컨대 인터넷을 통해 전송되도록 구성될 수 있다.
추가적인 실시예는 여기서 설명된 방법들 중 하나의 방법을 수행하도록 구성되거나 적응된 프로세싱 수단, 예컨대 컴퓨터, 또는 프로그램가능 논리 디바이스를 포함한다.
추가적인 실시예는 여기서 설명된 방법들 중 하나의 방법을 수행하기 위한 컴퓨터 프로그램이 설치된 컴퓨터를 포함한다.
몇몇의 실시예들에서, 프로그램가능한 논리 디바이스(예컨대 필드 프로그램가능한 게이트 어레이)는 여기서 설명된 방법들의 기능들 모두 또는 그 일부를 수행하기 위해 이용될 수 있다. 몇몇의 실시예들에서, 여기서 설명된 방법들 중 하나의 방법을 수행하기 위해 필드 프로그램가능한 게이트 어레이가 마이크로프로세서와 협동할 수 있다. 일반적으로, 본 방법들은 바람직하게는 임의의 하드웨어 장치에 의해 수행된다.
상술한 실시예들은 본 발명의 원리들에 대한 일례에 불과하다. 여기서 설명된 구성 및 상세사항의 수정 및 변형은 본 발명분야의 당업자에게 자명할 것으로 이해된다. 그러므로, 본 발명은 계류중인 본 특허 청구항들의 범위에 의해서만 제한이 되며 여기서의 실시예들의 설명 및 해설을 통해 제시된 특정한 세부사항들에 의해서는 제한되지 않는다는 것이 본 취지이다.

Claims (20)

  1. 이진 메시지 데이터(101a, m; 2410)에 기초하여 워터마크 신호(101b; 2420)를 제공하는 워터마크 생성기(101; 2400)에 있어서,
    이진 메시지 데이터의 단일 메시지 비트에 기초하여, 시간 주파수 영역값들의 세트의 형태로 메시지 비트를 표현하는 이차원 확산 정보(b(i,j); 2432)를 제공하도록 구성된 정보 프로세서(303, 304, 305); 및
    이차원 확산 정보에 기초하여 워터마크 신호를 제공하도록 구성된 워터마크 신호 제공기(306, 307)를 포함하고,
    상기 정보 프로세서는, 제1 확산 시퀀스(cf )를 이용하여 제1 메시지 비트를 제1 확산 방향으로 확산시키고 상기 제1 확산 시퀀스(cf )를 이용하여 상기 제1 확산 방향으로 제2 메시지 비트를 확산시켜서 중간 정보 표현(303a, cf·m)을 획득하고, 상기 중간 정보 표현을 오버레이 정보 표현(S)과 결합하여 결합된 정보 표현(C)을 획득하며, 제2 확산 시퀀스(ct )를 이용하여 상기 결합된 정보 표현을 제2 방향으로 확산시켜서 상기 이차원 확산 정보를 획득하도록 구성되고,
    상기 정보 프로세서는, 제1 확산 메시지 비트가 제1 오버레이 정보 확산 시퀀스(a)와 곱해지고 제2 확산 메시지 비트가 제2 오버레이 정보 확산 시퀀스(b)와 곱해지도록, 복수의 오버레이 정보 확산 시퀀스들(a,b)을 이용하여 상기 제1 확산 방향으로 확산되는 오버레이 정보 표현과 중간 정보 표현을 결합하도록 구성되며,
    상기 제1 오버레이 정보 확산 시퀀스와 상기 제2 오버레이 정보 확산 시퀀스는 직교하는 것인, 워터마크 생성기.
  2. 제1항에 있어서, 상기 제1 확산 시퀀스(cf )는 Nf x 1 크기를 포함한 것인, 워터마크 생성기.
  3. 제1항에 있어서, 상기 제1 확산 시퀀스는 주파수 방향으로의 확산만을 정의하는 것인, 워터마크 생성기.
  4. 제1항에 있어서, 상기 정보 프로세서는, 제1 확산 시퀀스(cf )를 이용하여 상기 메시지 비트를 제1 확산 방향으로 확산시켜서 중간 정보 표현(303a, cf·m)을 획득하고, 상기 중간 정보 표현을 오버레이 정보 표현(S)과 결합하여 결합된 정보 표현(C)을 획득하며, 제2 확산 시퀀스(ct )를 이용하여 상기 결합된 정보 표현을 제2 방향으로 확산시켜서 상기 이차원 확산 정보를 획득하도록 구성된 것인, 워터마크 생성기.
  5. 제4항에 있어서, 상기 정보 프로세서는, 상기 메시지 비트와 오버레이 정보가 상이한 확산 시퀀스들(cf , a)을 통해 상기 제1 확산 방향으로 확산되고, 상기 메시지 비트와 상기 오버레이 정보의 조합이 공통 확산 시퀀스(ct )를 통해 제2 확산 방향으로 확산되도록, 오버레이 정보 확산 시퀀스(a)를 이용하여 상기 제1 확산 방향으로 확산된 오버레이 정보 표현과 상기 중간 정보 표현을 결합하도록 구성된 것인, 워터마크 생성기.
  6. 제4항에 있어서, 상기 정보 프로세서는, 중간 정보 표현(303a, cf·m)과 오버레이 정보 표현(S)을 곱셈결합하고, 중간 정보 표현의 값들과 오버랩 정보의 값들에 기초하여 형성된 곱셈값들을 포함한 결합된 정보 표현을 상기 제2 확산 시퀀스(ct )를 이용하여 제2 확산 방향으로 확산시켜서, 상기 곱셈값들이 공통 확산 시퀀스를 이용하여 확산되도록 구성된 것인, 워터마크 생성기.
  7. 제1항에 있어서, 상기 정보 프로세서는, 상기 메시지 비트를 제1 확산 방향으로 확산시키기 위해, 주어진 메시지 비트의 값에 기초하여, 상기 주어진 메시지 비트를, 비트 확산 시퀀스(cf )의 양의 배수인 제1 비트 표현상으로 확산시키거나, 또는 상기 비트 확산 시퀀스(cf )의 음의 배수인 제2 비트 표현상으로 선택적으로 확산시키도록 구성된 것인, 워터마크 생성기.
  8. 제1항에 있어서, 상기 정보 프로세서는, 메시지 비트를 제1 확산 방향으로 확산시킴으로써 획득된 중간 정보 표현의 주어진 값, 또는 메시지 비트를 제1 확산 방향으로 확산시키고 그 결과를 오버레이 정보 표현과 결합시킴으로써 획득된 결합된 정보 표현의 주어진 값을 확산 값들의 세트상에 맵핑하여, 확산 값들의 세트가, 상기 주어진 값에 따라 스케일링된, 스케일링된 버전의 제2 확산 시퀀스(ct )가 되게 하도록 구성된 것인, 워터마크 생성기.
  9. 제1항에 있어서, 상기 정보 프로세서는,
    Figure 112012091488322-pct00097
    에 따라 확산 정보 표현 R을 중간 정보 표현으로서 획득하도록 구성되고,
    여기서, cf 는 주파수 확산 폭 Nf의 비트 확산 시퀀스를 표현하는 Nf x 1 크기의 벡터이고,
    m은 이진 메시지 데이터의 Nmc개 비트들을 표현하는 1 x Nmc 크기의 벡터이고, 상기 비트들의 상이한 이진값들은 상이한 부호를 갖는 벡터 m의 엔트리들에 의해 표현되고,
    "
    Figure 112012091488322-pct00098
    "는 행렬 곱셈 연산자를 가리키고;
    상기 정보 프로세서는
    Figure 112012091488322-pct00099
    연산을 이용하여 이차원 확산 정보 B를 획득하도록 구성되고,
    R'R과 같거나 또는 R을 오버레이 정보(S)와 결합시킴으로써 획득되고,
    Figure 112012091488322-pct00100
    는 크로네커(Kronecker) 곱 연산자를 가리키며;
    Figure 112012091488322-pct00101
    는 전치 연산자를 가리키는 것인, 워터마크 생성기.
  10. 워터마킹된 신호(200a, r(t); 2510)에 기초하여 이진 메시지 데이터(202a; 2520)를 제공하는 워터마크 디코더(200; 2500)에 있어서,
    워터마킹된 신호의 시간 주파수 영역 표현(204; 2532)을 제공하도록 구성된 시간 주파수 영역 표현 제공기(203; 2530); 및
    하나 이상의 역확산기 블록들(1201, 1203; 2542)을 갖는 역확산기를 포함한 동기화 결정기(201; 2540)로서, 상기 역확산기는 시간 주파수 영역 표현의 이차원 부분에 기초하여 동기화 정보(205; 2544)를 획득하기 위해 이차원 역확산을 수행하도록 구성된 것인, 상기 동기화 결정기(201; 2540); 및
    동기화 정보를 이용하여 워터마킹된 신호의 시간 주파수 영역 표현으로부터 이진 메시지 데이터를 추출하도록 구성된 워터마크 추출기(202; 2550)를 포함하고,
    상기 역확산기는 시간적으로 역확산된 값들의 세트를 획득하도록 구성되고, 상기 역확산기는 복수의 시간 주파수 영역 표현의 값들과 시간적 역확산 시퀀스(ct )의 값들을 곱하고 이 곱셈의 결과들을 합산하여 시간적으로 역확산된 값들 중 하나의 값을 획득하도록 구성되고,
    상기 역확산기는 시간적으로 역확산된 값들을 주파수 역확산 시퀀스의 값들과 엘리먼트별로 곱하고, 이 곱셈들의 결과들을 합산하여 이차원적으로 역확산된 값을 획득하도록 구성되고,
    상기 역확산기는, 시간적으로 역확산된 값들의 후속 세트들을 상이한 주파수 역확산 시퀀스들의 값들과 엘리먼트별로 곱하여 시간적으로 역확산된 값들의 제1 세트가 엘리먼트별로 및 원스텝 또는 멀티스텝 곱셈으로 유효하게 곱해지도록 하고, 상기 시간적으로 역확산된 값들의 후속 세트들을 공통 주파수 역확산 시퀀스와 제1 오버레이 역확산 시퀀스의 곱인 제1 결합된 주파수 역확산 시퀀스와 곱하여 시간적으로 역확산된 값들의 제2 세트가 엘리먼트별로 및 원스텝 또는 멀티스텝 곱셈으로 유효하게 곱해지도록 하며, 상기 시간적으로 역확산된 값들의 후속 세트들을 제1 오버레이 주파수 역확산 시퀀스와는 상이한 제2 오버레이 역확산 시퀀스와 공통 주파수 역확산 시퀀스의 곱인 제2 결합된 주파수 역확산 시퀀스와 곱하도록 구성되며,
    제1 오버레이 역확산 시퀀스와 제2 오버레이 역확산 시퀀스는 직교하는 것인, 워터마크 디코더.
  11. 워터마킹된 신호(200a, r(t); 2570)에 기초하여 이진 메시지 데이터(202a; 2580)를 제공하는 워터마크 디코더(200; 2560)에 있어서,
    워터마킹된 신호의 시간 주파수 영역 표현(204; 2592)을 제공하도록 구성된 시간 주파수 영역 표현 제공기(203; 2590); 및
    하나 이상의 역확산기 블록들을 갖는 역확산기를 포함한 워터마크 추출기(202; 2596)를 포함하며, 상기 역확산기는 시간 주파수 영역 표현의 이차원 부분에 기초하여 이진 메시지 데이터의 비트를 획득하기 위해 이차원 역확산을 수행하도록 구성된 것인, 상기 워터마크 추출기를 포함하고,
    상기 역확산기는 시간적으로 역확산된 값들의 세트를 획득하도록 구성되고,
    상기 역확산기는 복수의 시간 주파수 영역 표현 값들과 시간적 역확산 시퀀스(ct )의 값들을 곱하고 이 곱셈의 결과들을 합산하여 시간적으로 역확산된 값들 중 하나의 역확산 값을 획득하도록 구성되고,
    상기 역확산기는 시간적으로 역확산된 값들을 주파수 역확산 시퀀스의 값들과 엘리먼트별로 곱하고, 이 곱셈들의 결과들을 합산하여 이차원적으로 역확산된 값을 획득하도록 구성되고,
    상기 역확산기는, 시간적으로 역확산된 값들의 후속 세트들을 상이한 주파수 역확산 시퀀스들의 값들과 엘리먼트별로 곱하여 시간적으로 역확산된 값들의 제1 세트가 엘리먼트별로 및 원스텝 또는 멀티스텝 곱셈으로 유효하게 곱해지도록 하고, 상기 시간적으로 역확산된 값들의 후속 세트들을 공통 주파수 역확산 시퀀스와 제1 오버레이 역확산 시퀀스의 곱인 제1 결합된 주파수 역확산 시퀀스와 곱하여 시간적으로 역확산된 값들의 제2 세트가 엘리먼트별로 및 원스텝 또는 멀티스텝 곱셈으로 유효하게 곱해지도록 하며, 상기 시간적으로 역확산된 값들의 후속 세트들을 제1 오버레이 주파수 역확산 시퀀스와는 상이한 제2 오버레이 역확산 시퀀스와 공통 주파수 역확산 시퀀스의 곱인 제2 결합된 주파수 역확산 시퀀스와 곱하도록 구성되며,
    제1 오버레이 역확산 시퀀스와 제2 오버레이 역확산 시퀀스는 직교하는 것인, 워터마크 디코더.
  12. 제10항에 있어서, 상기 역확산기는 복수의 시간 주파수 영역 표현(1377)의 값들과 시간적 역확산 시퀀스(ct )의 값들을 곱하고 이 곱셈의 결과들을 합산하여 시간적으로 역확산된 값(1378)을 획득하도록 구성되며,
    상기 역확산기는 시간 주파수 영역 표현 값들의 상이한 주파수들과 연관된 복수의 시간적으로 역확산된 값들 또는 이로부터 유도된 값들과 주파수 역확산 시퀀스(cf )를 엘리먼트별로 곱하고 이 곱셈의 결과들을 합산하여 이차원적으로 역확산된 값을 획득하도록 구성된 것인, 워터마크 디코더.
  13. 제10항에 있어서, 상기 역확산기는 시간적으로 역확산된 값들의 세트를 획득하도록 구성되고, 상기 역확산기는 복수의 시간 주파수 영역 표현의 값들과 시간적 역확산 시퀀스(ct )의 값들을 곱하고 이 곱셈의 결과들을 합산하여 시간적으로 역확산된 값들 중 하나의 값을 획득하도록 구성되며,
    상기 역확산기는 시간적으로 역확산된 값들을 주파수 역확산 시퀀스의 값들과 엘리먼트별로 곱하고, 이 곱셈들의 결과들을 합산하여 이차원적으로 역확산된 값을 획득하도록 구성된 것인, 워터마크 디코더.
  14. 제13항에 있어서, 상기 역확산기는, 시간적으로 역확산된 값들의 후속 세트들과, 상이한 주파수 역확산 시퀀스들의 값들을 엘리먼트별로 곱하여 시간적으로 역확산된 값들의 제1 세트가 엘리먼트별로 및 원스텝 또는 멀티스텝 곱셈으로 유효하게 곱해지도록 하고, 공통 주파수 역확산 시퀀스와 제1 오버레이 역확산 시퀀스의 곱인 제1 결합된 주파수 역확산 시퀀스로 곱하여 시간적으로 역확산된 값들의 제2 세트가 엘리먼트별로 및 원스텝 또는 멀티스텝 곱셈으로 유효하게 곱해지도록 하며, 제1 오버레이 주파수 역확산 시퀀스와는 상이한 제2 오버레이 역확산 시퀀스와 공통 주파수 역확산 시퀀스의 곱인 제2 결합된 주파수 역확산 시퀀스로 곱하도록 구성된 것인, 워터마크 디코더.
  15. 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법(2600)에 있어서,
    이진 메시지 데이터의 단일 메시지 비트에 기초하여, 시간 주파수 영역값들의 세트의 형태로 메시지 비트를 표현하는 이차원 확산 정보를 제공하는 단계(2610); 및
    상기 이차원 확산 정보에 기초하여 워터마크 신호를 제공하는 단계(2620)를 포함하고,
    제1 확산 시퀀스(cf )를 이용하여 제1 메시지 비트가 제1 확산 방향으로 확산되고 상기 제1 확산 시퀀스(cf )를 이용하여 상기 제1 확산 방향으로 제2 메시지 비트가 확산되어서, 중간 정보 표현(303a, cf·m)이 획득되고, 상기 중간 정보 표현이 오버레이 정보 표현(S)과 결합되어 결합된 정보 표현(C)이 획득되며, 제2 확산 시퀀스(ct )를 이용하여 상기 결합된 정보 표현이 제2 방향으로 확산되어 상기 이차원 확산 정보가 획득되고,
    제1 확산 메시지 비트가 제1 오버레이 정보 확산 시퀀스(a)와 곱해지고 제2 확산 메시지 비트가 제2 오버레이 정보 확산 시퀀스(b)와 곱해지도록, 복수의 오버레이 정보 확산 시퀀스들(a,b)을 이용하여 상기 제1 확산 방향으로 확산되는 오버레이 정보 표현과 상기 중간 정보 표현은 결합되며, 상기 제1 오버레이 정보 확산 시퀀스와 상기 제2 오버레이 정보 확산 시퀀스는 직교하는 것인, 워터마크 신호 제공 방법.
  16. 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법(2700)에 있어서,
    워터마킹된 신호의 시간 주파수 영역 표현을 제공하는 단계(2710); 및
    시간 주파수 영역 표현의 이차원 부분에 기초하여 상기 워터마킹된 신호의 시간 주파수 영역 표현으로부터 이진 메시지 데이터를 추출하기 위해 이용된 동기화 정보 또는 이진 메시지 데이터의 비트를 획득하기 위해 이차원 역확산을 수행하는 단계(2720)를 포함하고,
    시간적으로 역확산된 값들의 세트가 획득되고, 복수의 시간 주파수 영역 표현 값들은 시간적 역확산 시퀀스(ct )의 값들과 곱해지고, 이 곱셈의 결과들을 합산되어 시간적으로 역확산된 값들 중 하나의 역확산 값이 획득되고,
    상기 시간적으로 역확산된 값들을 주파수 역확산 시퀀스의 값들과 엘리먼트별로 곱해지고, 이 곱셈들의 결과들은 합산되어 이차원적으로 역확산된 값이 획득되고,
    상기 시간적으로 역확산된 값들의 후속 세트들은 상이한 주파수 역확산 시퀀스들의 값들과 엘리먼트별로 곱해져서 시간적으로 역확산된 값들의 제1 세트가 엘리먼트별로 및 원스텝 또는 멀티스텝 곱셈으로 유효하게 곱해지도록 하고, 상기 시간적으로 역확산된 값들의 후속 세트들은 공통 주파수 역확산 시퀀스와 제1 오버레이 역확산 시퀀스의 곱인 제1 결합된 주파수 역확산 시퀀스와 곱해져서 시간적으로 역확산된 값들의 제2 세트가 엘리먼트별로 및 원스텝 또는 멀티스텝 곱셈으로 유효하게 곱해지도록 하며, 상기 시간적으로 역확산된 값들의 후속 세트들은 제1 오버레이 주파수 역확산 시퀀스와는 상이한 제2 오버레이 역확산 시퀀스와 공통 주파수 역확산 시퀀스의 곱인 제2 결합된 주파수 역확산 시퀀스와 곱해지며,
    상기 제1 오버레이 역확산 시퀀스와 상기 제2 오버레이 역확산 시퀀스는 직교하는 것인, 이진 메시지 데이터 제공 방법.
  17. 컴퓨터상에서 구동될 때, 제15항 또는 제16항에 따른 방법을 수행하기 위한 프로그램이 저장된 컴퓨터 판독 가능한 디지털 저장 매체.
  18. 삭제
  19. 삭제
  20. 삭제
KR1020127024982A 2010-02-26 2011-02-22 워터마크 생성기, 워터마크 디코더, 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법, 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법 및 이차원 비트 확산을 이용한 프로그램이 저장된 컴퓨터 판독 가능한 디지털 저장 매체 KR101419163B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP10154960.8 2010-02-26
EP10154960A EP2362386A1 (en) 2010-02-26 2010-02-26 Watermark generator, watermark decoder, method for providing a watermark signal in dependence on binary message data, method for providing binary message data in dependence on a watermarked signal and computer program using a two-dimensional bit spreading
PCT/EP2011/052622 WO2011104243A1 (en) 2010-02-26 2011-02-22 Watermark generator, watermark decoder, method for providing a watermark signal in dependence on binary message data, method for providing binary message data in dependence on a watermarked signal and computer program using a two-dimensional bit spreading

Publications (2)

Publication Number Publication Date
KR20120128146A KR20120128146A (ko) 2012-11-26
KR101419163B1 true KR101419163B1 (ko) 2014-07-11

Family

ID=42313668

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127024982A KR101419163B1 (ko) 2010-02-26 2011-02-22 워터마크 생성기, 워터마크 디코더, 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법, 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법 및 이차원 비트 확산을 이용한 프로그램이 저장된 컴퓨터 판독 가능한 디지털 저장 매체

Country Status (17)

Country Link
US (1) US8989885B2 (ko)
EP (2) EP2362386A1 (ko)
JP (1) JP5665885B2 (ko)
KR (1) KR101419163B1 (ko)
CN (1) CN102859586B (ko)
AU (1) AU2011219839B2 (ko)
BR (1) BR112012021089A2 (ko)
CA (1) CA2790649C (ko)
ES (1) ES2440339T3 (ko)
HK (1) HK1177978A1 (ko)
MX (1) MX2012009859A (ko)
MY (1) MY160428A (ko)
PL (1) PL2522013T3 (ko)
RU (1) RU2666647C2 (ko)
SG (1) SG183469A1 (ko)
WO (1) WO2011104243A1 (ko)
ZA (1) ZA201207110B (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2565667A1 (en) 2011-08-31 2013-03-06 Friedrich-Alexander-Universität Erlangen-Nürnberg Direction of arrival estimation using watermarked audio signals and microphone arrays
US20140111701A1 (en) * 2012-10-23 2014-04-24 Dolby Laboratories Licensing Corporation Audio Data Spread Spectrum Embedding and Detection
WO2014120685A1 (en) 2013-02-04 2014-08-07 Dolby Laboratories Licensing Corporation Systems and methods for detecting a synchronization code word
US9626977B2 (en) 2015-07-24 2017-04-18 Tls Corp. Inserting watermarks into audio signals that have speech-like properties
CN108055105B (zh) * 2017-11-14 2019-08-13 华中科技大学 一种面向cpm信号的射频水印嵌入和提取方法
US10652654B1 (en) * 2019-04-04 2020-05-12 Microsoft Technology Licensing, Llc Dynamic device speaker tuning for echo control
CN110448666B (zh) * 2019-08-16 2021-09-24 陈富强 一种治疗烧烫伤的配方精油
RU2746708C1 (ru) * 2020-07-29 2021-04-19 Закрытое акционерное общество "Перспективный мониторинг" Способ и устройство ввода водяного знака в аудиосигнал

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02206233A (ja) 1989-02-03 1990-08-16 Fujitsu Ltd 移動端末データモニタ方式
FR2681997A1 (fr) 1991-09-30 1993-04-02 Arbitron Cy Procede et dispositif d'identification automatique d'un programme comportant un signal sonore.
NZ314404A (en) 1992-11-16 1998-11-25 Ceridian Corp Encoding symbols in audio signals that represent frequency information, for identifying broadcast programs during audience survey
US7316025B1 (en) * 1992-11-16 2008-01-01 Arbitron Inc. Method and apparatus for encoding/decoding broadcast or recorded segments and monitoring audience exposure thereto
CN1149366A (zh) 1994-03-31 1997-05-07 塞里迪安公司阿比特龙分公司 用来把码包括到音频信号中并且解码的设备和方法
US5450490A (en) * 1994-03-31 1995-09-12 The Arbitron Company Apparatus and methods for including codes in audio signals and decoding
DE19640814C2 (de) 1996-03-07 1998-07-23 Fraunhofer Ges Forschung Codierverfahren zur Einbringung eines nicht hörbaren Datensignals in ein Audiosignal und Verfahren zum Decodieren eines nicht hörbar in einem Audiosignal enthaltenen Datensignals
US6584138B1 (en) * 1996-03-07 2003-06-24 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Coding process for inserting an inaudible data signal into an audio signal, decoding process, coder and decoder
JP2001022366A (ja) 1999-07-12 2001-01-26 Roland Corp 波形データへの電子透かし埋込み方法および装置
CN1237798C (zh) * 2000-11-08 2006-01-18 皇家菲利浦电子有限公司 传送指令的方法与设备
AU2003210625A1 (en) * 2002-01-22 2003-09-02 Digimarc Corporation Digital watermarking and fingerprinting including symchronization, layering, version control, and compressed embedding
US20050147248A1 (en) 2002-03-28 2005-07-07 Koninklijke Philips Electronics N.V. Window shaping functions for watermarking of multimedia signals
US20060156002A1 (en) * 2002-07-22 2006-07-13 Koninklijke Philips Electronics N.V. Watermark detection
DE102004021404B4 (de) * 2004-04-30 2007-05-10 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Wasserzeicheneinbettung
JP2006251676A (ja) 2005-03-14 2006-09-21 Akira Nishimura 振幅変調を用いた音響信号への電子透かしデータの埋め込み・検出装置
EP1729285A1 (en) 2005-06-02 2006-12-06 Deutsche Thomson-Brandt Gmbh Method and apparatus for watermarking an audio or video signal with watermark data using a spread spectrum
WO2006129293A1 (en) * 2005-06-03 2006-12-07 Koninklijke Philips Electronics N.V. Homomorphic encryption for secure watermarking
EP1764780A1 (en) 2005-09-16 2007-03-21 Deutsche Thomson-Brandt Gmbh Blind watermarking of audio signals by using phase modifications
JP5329963B2 (ja) * 2005-10-05 2013-10-30 エルジー エレクトロニクス インコーポレイティド 信号処理方法及び装置、エンコーディング及びデコーディング方法並びにそのための装置
EP1898396A1 (en) 2006-09-07 2008-03-12 Deutsche Thomson-Brandt Gmbh Method and apparatus for encoding/decoding symbols carrying payload data for watermarking of an audio or video signal
DE102008014311A1 (de) * 2008-03-14 2009-09-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Einbetter zum Einbetten eines Wasserzeichens in eine Informationsdarstellung, Detektor zum Detektieren eines Wasserzeichens in einer Informationsdarstellung, Verfahren, Computerprogramm und Informationssignal
JP5338170B2 (ja) * 2008-07-18 2013-11-13 ヤマハ株式会社 電子透かし情報の埋め込みおよび抽出を行う装置、方法およびプログラム
JP2010044147A (ja) 2008-08-11 2010-02-25 Yamaha Corp 電子透かし情報の埋め込みおよび抽出を行う装置、方法およびプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KIROVSKI D ET AL, "Robust Convert communication over a Public Audio Channel using Spread Spectrum, " LNCS, Jan 2001 *

Also Published As

Publication number Publication date
US20130211564A1 (en) 2013-08-15
PL2522013T3 (pl) 2014-05-30
SG183469A1 (en) 2012-10-30
HK1177978A1 (en) 2013-08-30
ES2440339T3 (es) 2014-01-28
EP2362386A1 (en) 2011-08-31
CN102859586A (zh) 2013-01-02
RU2666647C2 (ru) 2018-09-11
US8989885B2 (en) 2015-03-24
MY160428A (en) 2017-03-15
MX2012009859A (es) 2012-09-12
WO2011104243A1 (en) 2011-09-01
EP2522013A1 (en) 2012-11-14
BR112012021089A2 (pt) 2022-12-27
CA2790649A1 (en) 2011-09-01
AU2011219839B2 (en) 2014-08-14
JP5665885B2 (ja) 2015-02-04
CN102859586B (zh) 2014-07-02
EP2522013B1 (en) 2013-11-27
JP2013520695A (ja) 2013-06-06
KR20120128146A (ko) 2012-11-26
AU2011219839A1 (en) 2012-10-18
RU2012140698A (ru) 2014-04-10
CA2790649C (en) 2016-05-03
ZA201207110B (en) 2013-06-26

Similar Documents

Publication Publication Date Title
KR101401174B1 (ko) 워터마크 신호 제공기 및 워터마크 신호 제공 방법
KR101411101B1 (ko) 워터마크 신호 제공 및 워터마크 임베딩
KR101419164B1 (ko) 개선된 동기화 개념을 이용한 워터마크 생성기, 워터마크 디코더, 워터마크 신호를 제공하는 방법, 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법 및 컴퓨터 프로그램이 저장된 컴퓨터 판독 가능한 저장 매체
KR101419163B1 (ko) 워터마크 생성기, 워터마크 디코더, 이진 메시지 데이터에 기초하여 워터마크 신호를 제공하는 방법, 워터마킹된 신호에 기초하여 이진 메시지 데이터를 제공하는 방법 및 이차원 비트 확산을 이용한 프로그램이 저장된 컴퓨터 판독 가능한 디지털 저장 매체
KR101419162B1 (ko) 차동 인코딩을 이용하는 워터마크 발생기, 워터마크 디코더, 이진 메시지 데이터에 의존하여 워터마크 신호를 제공하기 위한 방법, 워터마킹된 신호에 의존하여 이진 메시지 데이터를 제공하기 위한 방법, 및 컴퓨터 프로그램
US9299356B2 (en) Watermark decoder and method for providing binary message data

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: 20180626

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190627

Year of fee payment: 6