KR20110047106A - Method and apparatus for embedding and detecting watermark into/from contents - Google Patents

Method and apparatus for embedding and detecting watermark into/from contents Download PDF

Info

Publication number
KR20110047106A
KR20110047106A KR1020100022472A KR20100022472A KR20110047106A KR 20110047106 A KR20110047106 A KR 20110047106A KR 1020100022472 A KR1020100022472 A KR 1020100022472A KR 20100022472 A KR20100022472 A KR 20100022472A KR 20110047106 A KR20110047106 A KR 20110047106A
Authority
KR
South Korea
Prior art keywords
bit
watermark
value
sequence
content
Prior art date
Application number
KR1020100022472A
Other languages
Korean (ko)
Other versions
KR101613946B1 (en
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 엘지전자 주식회사
Priority to US13/504,885 priority Critical patent/US8908905B2/en
Priority to PCT/KR2010/007425 priority patent/WO2011052992A2/en
Priority to EP10827076.0A priority patent/EP2495965B1/en
Priority to CN201080049595.XA priority patent/CN102598656B/en
Publication of KR20110047106A publication Critical patent/KR20110047106A/en
Application granted granted Critical
Publication of KR101613946B1 publication Critical patent/KR101613946B1/en

Links

Images

Classifications

    • 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/0085Time domain based watermarking, e.g. watermarks spread over several images
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C5/00Ciphering apparatus or methods not provided for in the preceding groups, e.g. involving the concealment or deformation of graphic data such as designs, written or printed messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23892Multiplex stream processing, e.g. multiplex stream encrypting involving embedding information at multiplex stream level, e.g. embedding a watermark at packet level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2541Rights Management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence

Abstract

PURPOSE: An apparatus for inserting a watermark to a content and detecting the inserted watermark is provided to improve the reliability of watermark detection. CONSTITUTION: A method for inserting a watermark to a content and detecting the inserted watermark comprises steps of: phase shifting for a bandwidth spread denotation to a predetermined shift amount by a first bet group value which is included in a data corresponding to the watermark; and selectively changing conversion factor of a content by the bit value of each bit sequence including the shifted bandwidth spread denotation.

Description

컨텐트에 워터마크(watermark)를 삽입하고 삽입된 워터마크를 검출하는 방법 및 장치 {Method and apparatus for embedding and detecting watermark into/from contents}Method and apparatus for embedding a watermark in content and detecting the inserted watermark {Method and apparatus for embedding and detecting watermark into / from contents}

본 발명은 컨텐트에 워터마크를 삽입하는 방법과 장치, 그리고 삽입된 워터마크를 검출하는 방법과 장치에 관한 것으로서, 특히 아날로그 인터페이스를 통해 불법적으로 복제되는 컨텐트에서도 워터마크가 검출될 수 있게 하는 포렌직(forensic) 워터마킹에 관한 것이다.
The present invention relates to a method and apparatus for embedding a watermark in content, and to a method and apparatus for detecting an inserted watermark. In particular, the present invention relates to a forensic technique that enables watermarks to be detected even in content that is illegally copied through an analog interface. forensic).

IPTV나 PPV(Pay Per View) 서비스 등은 시청자가 유료 컨텐츠를 구매하고 이를 시청하도록 하는 비즈니스 모델이다. 이러한 서비스는 정당한 대가를 지불한 사용자만이 이용할 수 있도록 CAS (Conditional Access System: 수신제한시스템)등의 DRM (Digital Right Management)을 채택하고 있는 것이 일반적이다. CAS는 컨텐츠의 불법적인 사용자의 접근을 방지하기 위해 사용되는 기술로서, 수신자격이 있는 시청자만이 특정 프로그램을 수신할 수 있도록 송신기에서 데이터를 스크램블링(scrambling)을 하고, 수신 인가를 받은 가입자만이 그 스크램블된 데이터를 디스크램블링(de-scrambling)을 하여 해당 프로그램을 시청할 수 있도록 한다. 도 1a은 CAS를 사용하는 일반적인 시스템을 나타낸다. 도 1a에서와 같이, 일반적으로 CAS는 서비스 제공자(10)가 제공한 세톱박스(Settop Box)(11)에 의해서 구현된다. 물론, TV 자체가 세톱박스 기능을 내장하고 있는 경우도 있다.IPTV and Pay Per View (PPV) services are business models that allow viewers to purchase paid content and watch it. These services generally adopt Digital Right Management (DRM), such as a Conditional Access System (CAS), so that only users who pay a reasonable price can use it. CAS is a technology used to prevent unauthorized users from accessing content, and scrambling data at the transmitter so that only qualified viewers can receive a specific program. The scrambled data is de-scrambled so that the program can be viewed. 1A shows a general system using CAS. As shown in FIG. 1A, a CAS is generally implemented by a Settop Box 11 provided by a service provider 10. Of course, the TV itself has a built-in set-top box.

하지만 이러한 CAS 시스템은 사용권한을 가진 사용자가 시청하면서 불법적으로 복제를 하는 것은 막지 못한다. 일반적으로 세톱박스(11)에서 나온 영상은 TV의 입력단자로 연결되는데, 도 1b에서 보는 바와 같이, 상기 연결을 위한 세톱박스(11)의 출력단자에 캡처보드(capture board)와 같은 장비(15)를 연결하여 그대로 복제하게 되면 원본 화면과 같은 화질을 가진 복제본을 생성할 수 있고, 또한, TV에 출력되는 화면을 캠코더(camcorder)(16)로 촬영(16a)하여 복제본을 생성할 수 있다. 이와 같이 불법적으로 복제된 컨텐츠는 DVD나 인터넷 파일공유 서비스(19)를 통해 타인들에게 제공됨으로써 컨텐트 제공자 또는 서비스 업자가 막대한 손해를 입는 사례들이 발생하고 있다. However, such a CAS system does not prevent illegal copying while watching the user with permission. In general, the image from the three-top box 11 is connected to the input terminal of the TV, as shown in Figure 1b, the equipment such as a capture board (capture board) on the output terminal of the set-top box 11 for the connection (15) If the connection is duplicated as it is, a replica having the same image quality as the original screen may be generated, and a replica may be generated by capturing (16a) a screen output to a TV with a camcorder (camcorder) 16. As such illegally copied contents are provided to others through a DVD or an Internet file sharing service 19, there are cases in which content providers or service providers suffer enormous damages.

위와 같은 아날로그 인터페이스 방식을 통한 컨텐츠 불법복제를 아날로그 홀(analog-hole)이라고 하는 데, 이러한 불법복제에 대응하기 위하여 다양한 포렌직(forensic) 워터마킹(watermarking) 기술들이 제안되고 있다. 포렌직 워터마킹 기술은, 컨텐츠 내에 제작자 또는 유통경로에 관한 정보나 시청자 등에 관한 정보를 눈에 보이지 않게 삽입함으로써, 해당 컨텐츠가 불법적으로 유통되었을 경우 그 컨텐츠의 불법성 여부의 확인, 그리고 유출경로나 유출자 등을 추적하는 데 필요한 정보를 얻을 수 있도록 하는 기술이다.
The illegal copying of content through the analog interface method is called analog-hole, and various forensic watermarking techniques have been proposed to cope with such illegal copying. Forensic watermarking technology invisibly inserts information about the producer or distribution path, viewers, etc. in the content so that if the content is illegally distributed, whether the content is illegal or not, and whether the content is leaked or leaked. It's a technique that allows you to get the information you need to track your back.

본 발명의 일 목적은, 불법적으로 복제한 원본의 품질을 갖는 컨텐트는 물론, 아날로그 홀 방식에 의해 화질이 열화된 복사본의 경우에도 워터마크 검출의 신뢰성을 보장할 수 있는 워터마킹과 그 검출방법 및 장치를 제공하는 것이다.One object of the present invention is watermarking and a method of detecting the same, which ensures the reliability of watermark detection even in the case of a content whose quality is deteriorated by an analog hall method as well as content having the quality of an illegally copied original. It is to provide a device.

본 발명의 다른 목적은, 워터마크를 훼손시키고자 하는 공격, 예를 들어 기하학적(geometric) 공격, 프레임율(frame rate) 변환, 영상의 재인코딩(re-encoding) 등의 공격에 보다 강인한 특성을 갖는 워터마킹과 그 검출방법 및 장치를 제공하는 것이다.Another object of the present invention is to provide a more robust feature to attacks such as geometric attacks, frame rate conversions, and re-encoding of images, such as those that attempt to destroy watermarks. It is to provide a watermark having the same and a method and apparatus for detecting the same.

또한, 본 발명의 또 다른 목적은, 워터마킹 장치의 구현이 보다 단순하고 용이하게 되는 워터마킹 방법 및 장치를 제공하는 것이다.It is still another object of the present invention to provide a watermarking method and apparatus in which the implementation of the watermarking apparatus is simpler and easier.

본 발명의 목적은, 상기 서술된 명시적인 목적에 국한되는 것은 아니며, 본 발명에 대한 구체적이고 예시적인 하기의 설명에서 도출될 수 있는 효과를 달성하는 것을 또한 그 목적에 당연히 포함한다.
The object of the present invention is not limited to the explicit purpose described above, but also naturally includes the purpose of achieving the effect that can be derived from the specific and exemplary description of the present invention.

본 발명에 따른, 컨텐트에 워터마크 데이터를 삽입하는 일 방법은, 워터마크에 상응하는 데이터에 속하는 제 1비트군(群)의 값에 따라 대역확산 부호의 위상 이동(shift)량을 결정하고 그 결정된 이동량만큼 상기 대역확산 부호를 위상이동시키는 단계와, 적어도 상기 위상 이동된 대역확산 부호를 포함하는 비트 시퀀스의 각 비트의 값에 따라, 컨텐트의 변환계수(Transform coefficient)를 선택적으로 변화시키는 단계를 포함하여 이루어진다.According to an embodiment of the present invention, a method of inserting watermark data into content includes determining a phase shift amount of a spread spectrum code according to a value of a first bit group belonging to data corresponding to a watermark. Phase shifting the spread spectrum code by the determined shift amount and selectively changing a transform coefficient of the content according to a value of each bit of the bit sequence including at least the phase shifted spread spectrum code It is made to include.

본 발명에 따른 일 실시예에서는, 상기 데이터에 속하는 제 2비트군의 값에 따라, 다수의 대역확산 부호들 중에서 하나의 대역확산 부호를 선택하는 단계가 더 포함된다. 본 실시예에서는, 상기 선택된 대역확산 부호를 상기 제 1비트군의 값에 따라 위상을 이동시킨다.In one embodiment according to the present invention, the method may further include selecting one spread spectrum code from among a plurality of spread spectrum codes according to the value of the second bit group belonging to the data. In this embodiment, the selected spread spectrum code is shifted in phase according to the value of the first bit group.

본 발명에 따른 일 실시예에서는, 상기 위상 이동량은, 제 1비트군의 값에 따라 k*2p (k=0,1,2,.., p=1,2,..)에서 선택되며, 상기 p값은 기 설정된 하나의 값이 고정 사용된다.In one embodiment according to the present invention, the phase shift amount is selected from k * 2 p (k = 0,1,2, .., p = 1,2, ..) according to the value of the first bit group. The value of p is fixedly used.

본 발명에 따른 일 실시예에서는, 항상 고정된 위상을 갖는 동기(sync) 대역확산 부호가 상기 비트 시퀀스에 더 포함된다. 상기 동기 대역확산 부호는 상기 대역확산 부호와 동일한 주기를 갖거나 또는 서로 다른 주기를 가질 수 있다.In one embodiment according to the present invention, a sync spread spectrum code having a fixed phase always is further included in the bit sequence. The sync spread spectrum code may have the same period as the spread spectrum code or may have a different period.

본 발명에 따른 일 실시예에서는, 상기 컨텐트를 구성하는 영상 프레임 시퀀스에서, 공간적(spatial) 압축만이 적용된 인트라(intra) 픽처에 대해서만 상기 컨텐트의 변환계수를 선택적으로 변화시킨다.According to an embodiment of the present invention, the transform coefficient of the content is selectively changed only for an intra picture to which only spatial compression is applied in the image frame sequence constituting the content.

본 발명에 따른 일 실시예에서는, 상기 컨텐트의 변환계수를 선택적으로 변화시키는 단계는, 상기 컨텐트를 구성하는 영상 프레임 시퀀스를 프레임 군(群)들로 구분하고 그 구분된 각 프레임 군에 대해 상기 각 비트를 대응시켜 해당 프레임 군의 변환계수를 선택적으로 변화시킨다. 본 발명에 따른 일 실시예에서는, 상기 구분되는 프레임군은 일정시간, 예를 들어 0.5초의 시간에 상응한다.In an embodiment according to the present invention, the step of selectively changing the conversion coefficient of the content comprises: dividing the video frame sequence constituting the content into frame groups and for each of the divided frame groups. Corresponding bits selectively change the conversion coefficient of the frame group. In one embodiment according to the invention, the distinguished frame group corresponds to a certain time, for example a time of 0.5 seconds.

본 발명에 따른 다른 일 실시예에서는, 상기 컨텐트의 변환계수를 선택적으로 변화시키는 단계는, 상기 컨텐트를 구성하는 영상 프레임 시퀀스를 프레임 군들로 구분하고 그 구분된 각 프레임 군을 하나씩 건너뛰면서 상기 각 비트를 대응시켜 해당 프레임 군의 변환계수를 선택적으로 변화시킨다. 본 발명에 따른 일 실시예에서는, 상기 구분되는 프레임군은 일정시간, 예를 들어 0.5초의 시간에 상응한다.In another embodiment of the present invention, the step of selectively changing the conversion coefficient of the content may include dividing the video frame sequence constituting the content into frame groups and skipping each of the divided frame groups one by one. Corresponding to selectively transform coefficients of the corresponding frame group. In one embodiment according to the invention, the distinguished frame group corresponds to a certain time, for example a time of 0.5 seconds.

본 발명에 따른 일 실시예에서는, 상기 컨텐트에 속하는 영상 프레임의 각 변환계수 블록의 일부 영역에 대한 변환계수를 선택적으로 변화시킨다.In one embodiment according to the present invention, a transform coefficient for a partial region of each transform coefficient block of an image frame belonging to the content is selectively changed.

본 발명에 따른, 컨텐트에 워터마크 데이터를 삽입하는 일 장치는, 대역확산 부호를 제공하도록 구성된 부호 공급부와, 상기 워터마크에 상응하는 데이터에 속하는 제 1비트군의 값에 따라, 상기 부호 공급부에서 제공되는 대역확산 부호의 위상 이동(shift)량을 결정하여 그 결정된 이동량만큼 상기 대역확산 부호를 위상이동시키고, 적어도 상기 위상 이동된 대역확산 부호를 포함하는 비트 시퀀스의 각 비트의 값에 따라, 컨텐트의 변환계수를 선택적으로 변화시키도록 구성된 워터마크 부호화부를 포함하여 구성된다.According to an aspect of the present invention, an apparatus for inserting watermark data into content includes a code supply unit configured to provide a spread spectrum code and a code supply unit according to a value of a first bit group belonging to data corresponding to the watermark. Determine a phase shift amount of a provided spread spectrum code and phase shift the spread spectrum code by the determined shift amount, and according to the value of each bit of the bit sequence including at least the phase shifted spread spectrum code, And a watermark encoder configured to selectively change the transform coefficient of.

본 발명에 따른 일 실시예에서는, 상기 부호 공급부와 상기 워터마크 부호화부를 포함하는 워터마크 기기(device)가, 스크램블된 디지털 압축 영상 데이터를 디스크램블링하여 디지털 압축 영상 데이터로 출력하는 디스크램블러와, 상기 디지털 압축 영상 데이터를 디코딩하여 영상신호로 출력하는 디코더간에 설치된다. 본 실시예에서는, 상기 워터마크 기기가 상기 디스크램블된 디지털 압축 영상 데이터를 수신하여 그 디지털 압축 영상 데이터의 변환계수를 선택적으로 변화시킨 후 상기 디코더에 인가한다. 본 발명에 따른 일 실시예에서는, 상기 워터마크 부호화부가, 상기 수신된 디지털 압축 영상 데이터에 대해 엔트로피(entropy) 디코딩을 수행하여 I (intra) 픽처 또는 I 슬라이스만을 추출하고 그 추출된 I 픽처 또는 I 슬라이스에 대한 변환계수를 선택적으로 변화시킨 후 엔트로피 인코딩을 수행하여 상기 디코더에 인가한다. 본 발명에 따른 다른 일 실시예에서는, 상기 워터마크 부호화부는, 상기 수신된 디지털 압축 영상 데이터에 대해 엔트로피 디코딩을 수행하여 I 픽처 또는 I 슬라이스만을 추출하고, 상기 추출된 I 픽처 또는 I 슬라이스에 대해, 인트라 예측(intra prediction)에 따른 디코딩을 수행하여 화소값의 픽처 또는 슬라이스로 복원하며, 상기 복원된 화소값을 갖는 픽처 또는 슬라이스에 대해 주파수성분을 나타내는 변환계수를 갖는 픽처 또는 슬라이스로 변환한 후 그 변환에 얻어진 변환계수를 선택적으로 변화시키고, 상기 변환계수가 선택적으로 변화된 픽처 또는 슬라이스에 대해 엔트로피 인코딩을 수행하여 상기 디코더에 인가한다.In one embodiment of the present invention, a descrambler for descrambled scrambled digital compressed image data and outputting the decoded digital compressed image data by the watermark device including the code supply unit and the watermark encoder, It is provided between decoders for decoding digital compressed video data and outputting the video signal. In the present embodiment, the watermark device receives the descrambled digital compressed image data, selectively changes the conversion coefficient of the digital compressed image data, and applies it to the decoder. According to an embodiment of the present invention, the watermark encoder performs entropy decoding on the received digital compressed image data to extract only an I (intra) picture or an I slice and extract the extracted I picture or I. After selectively changing the transform coefficient for the slice, entropy encoding is performed and applied to the decoder. In another embodiment of the present invention, the watermark encoder extracts only an I picture or an I slice by performing entropy decoding on the received digital compressed image data, and extracts only an I picture or an I slice from the extracted I picture or I slice. A decoding according to intra prediction is performed to reconstruct a picture or slice of a pixel value, and then to a picture or slice having a transform coefficient representing a frequency component with respect to the picture or slice having the reconstructed pixel value, The transform coefficient obtained in the transform is selectively changed, and entropy encoding is performed on the picture or slice in which the transform coefficient is selectively changed and applied to the decoder.

본 발명에 따른 일 실시예에서는, 상기 워터마크 부호화부의 동작을 제어하는 제어부를 더 포함하여 구성된다. 본 실시예에서는, 상기 제어부가, 대역확산 부호에 대한 양자화된(quantized) 이동량, 사용하는 대역확산 부호의 수, 대역확산 부호의 주기, 대역확산 부호의 동기화를 위해 사용하는 동기 대역확산 부호의 삽입빈도, 대역확산 부호의 1비트를 컨텐트에 대응시키는 연속 또는 비연속 모드, 그리고 대역확산 부호의 1비트에 대응시키는 컨텐트의 시간격 중에서 적어도 하나에 대한 설정치를 입력받고 그 설정치에 따른 동작이 수행되도록 상기 워터마크 부호화부를 제어하도록 구성된다.In one embodiment according to the present invention, the apparatus further includes a controller for controlling the operation of the watermark encoder. In this embodiment, the control unit inserts a synchronous quantized spreading code used for quantized movement of the spreading code, the number of spreading codes used, the period of spreading codes, and the synchronization of spreading codes. Receive a setting value for at least one of a frequency, a continuous or discontinuous mode corresponding to one bit of a spread spectrum code, and a time interval of content corresponding to one bit of a spread spectrum code, and perform an operation according to the setting value. And control the watermark encoder.

본 발명에 따른, 컨텐트로부터 워터마크 데이터를 검출하는 일 방법은, 컨텐트의 주파수 성분의 레벨을 추출하는 단계와, 상기 추출되는 레벨의 변화에 근거하여 비트값들을 대응시킴으로써 비트 시퀀스를 생성하는 단계와, 상기 생성된 비트 시퀀스에 대해 대역확산 부호의 위상을 이동(shift)시키면서 상관성(correlation)을 확인하는 단계와, 상기 확인되는 상관성이 자기상관성(auto-correlation)에 해당할 때의 상기 대역확산 부호의 위상 이동량을 확인하고, 그 확인된 이동량에 대응하는 값을 갖는 비트군(群)을 결정하는 단계를 포함하여 이루어진다.According to the present invention, a method of detecting watermark data from content includes extracting a level of a frequency component of the content, generating a bit sequence by matching bit values based on a change in the extracted level; Confirming a correlation while shifting a phase of a spread spectrum code with respect to the generated bit sequence, and when the identified correlation corresponds to auto-correlation, the spread spectrum code Checking a phase shift amount of the signal and determining a group of bits having a value corresponding to the identified shift amount.

본 발명에 따른 일 실시예에서는, 상기 확인되는 상관성이 자기상관성에 해당할 때의 상기 대역확산 부호에 대해 기 할당되어 있는 값을 갖는 다른 비트군을 결정하는 단계가 더 포함된다.In one embodiment according to the present invention, the method further includes determining another group of bits having a pre-assigned value for the spread spectrum code when the checked correlation corresponds to autocorrelation.

본 발명에 따른 일 실시예에서는, 상기 생성된 비트 시퀀스에 대해, 항상 고정된 위상을 갖는 동기 대역확산 부호의 상관성을 확인함으로써, 상기 비트 시퀀스상에서 상기 동기 대역확산 부호와 동일한 비트구간을 특정하는 단계가 더 포함된다. 본 실시예에서는, 상기 특정된 비트구간의 이전 또는 이후 비트열에 대해서, 상기 대역확산 부호의 위상을 이동시키면서 상관성을 확인하는 단계가 수행된다. 또한, 본 실시예에서는, 상기 비트 시퀀스상에서, 상기 동기 대역확산 부호와 동일한 비트구간으로 특정된 복수개의 동기 비트구간간의 시간격을 검사하는 단계가 더 수행될 수도 있다. 그리고, 기 지정된 시간격을 벗어난 시간격을 갖는 동기 비트구간간에 있는 비트열의 적어도 일부에 대해서는, 상기 대역확산 부호의 위상을 이동시키면서 상관성을 확인하는 과정이 수행되지 않을 수도 있다.In one embodiment according to the present invention, specifying the same bit interval as the sync spread spectrum code on the bit sequence by checking the correlation between the generated bit sequence and the sync spread spectrum code having a fixed phase. Is further included. In this embodiment, a step of confirming the correlation while shifting the phase of the spread spectrum code with respect to the bit string before or after the specified bit section is performed. Further, in the present embodiment, the step of checking the time interval between a plurality of sync bit sections specified by the same bit section as the sync spread spectrum code may be further performed on the bit sequence. In addition, for at least a part of the bit strings in the sync bit section having a time interval out of a predetermined time interval, a process of checking correlation while shifting the phase of the spread spectrum code may not be performed.

본 발명에 따른 일 실시예에서는, 상기 상관성을 확인하는 단계에서의 위상 이동량은, k*2p (k=0,1,2,.., p=1,2,..)에서 선택되며, 상기 p값은 기 설정된 하나의 값이 고정 사용된다.In one embodiment according to the present invention, the amount of phase shift in the checking of the correlation is selected from k * 2 p (k = 0,1,2, .., p = 1,2 ,.), The p-value is fixed to one preset value.

본 발명에 따른 다른 일 실시예에서는, 상기 비트군을 결정하는 단계는, 상기 확인되는 상관성이 자기상관성에 해당할 때의 상기 대역확산 부호의 위상 이동량이 2p (p=1,2,..) 비트의 0 또는 정수배가 아니면, 가장 근접된 상기 2P의 0 또는 정수배의 이동량으로 간주하여 그에 대응되는 값을 결정한다.In another embodiment according to the present invention, the step of determining the bit group, the phase shift amount of the spread spectrum code when the identified correlation corresponds to autocorrelation 2 p (p = 1,2, .. ), or 0 or an integer times of a bit, to be considered as a movement amount of the P 2 0, or an integer multiple of the most closely to determine the value corresponding thereto.

본 발명에 따른 일 실시예에서는, 상기 비트 시퀀스를 생성하는 단계는, 상기 추출되는 레벨을 레벨 변화율로 변환하는 1단계와, 상기 레벨 변화율이 상/하한 문턱값을 지나는 지점을 기준으로 시구간들로 분할하는 2단계와, 상기 분할된 각 시구간내의, 상기 레벨 변화율의 상향 피크치간, 하향 피크치간, 또는 상향 및 하향 피크치간의 시간격의 빈도에 근거하여 비트의 삽입주기를 결정하는 3단계와, 상기 결정된 비트 삽입주기마다 비트값을 대응시켜 상기 비트 시퀀스를 생성하는 4단계를 포함하여 이루어진다. 본 실시예의 일 경우에는, 상기 4단계는, 상기 결정된 비트의 삽입주기와 일치하는 시간격을 갖는 상향 피크치간 또는 하향 피크치간내의 상향 피크치 또는 하향 피크치를 시작점으로 하여 상기 결정된 비트 삽입주기마다 비트값을 대응시킨다. 비트값을 대응시킬 때는, 상기 결정된 각 삽입주기내에, 상기 상한 문턱값보다 큰 상향 피크치와 상기 하한 문턱값보다 작은 하향 피크치가 모두 있는 경우에 해당 삽입주기에 대해 제 1비트값, 예를 들어 ‘1’을, 그렇지 않은 경우에는 해당 삽입주기에 대해 상기 제 1비트값의 보수값, 예를 들어 ‘0’을 대응시킨다. 또한, 본 실시예의 일 경우에는, 자기상관성에 해당하는 값이 검출되지 않으면, 상기 상/하한 문턱값을 조정하여 상기 2단계부터 다시 수행되고, 상기 생성된 비트 시퀀스가 대역확산 부호의 ‘1’과 ‘0’의 개수차 특성을 만족하지 않으면 상기 2단계부터 다시 수행된다.In an embodiment of the present disclosure, the generating of the bit sequence may include converting the extracted level into a level change rate, and converting the extracted bit sequence into time periods based on a point at which the level change rate passes an upper / lower threshold. A second step of dividing, and a third step of determining an insertion period of bits based on a frequency of time intervals between the upstream peak value, the downstream peak value, or the upstream and downstream peak values of the level change rate in each of the divided time periods; And generating the bit sequence by associating a bit value with each determined bit insertion period. In the case of this embodiment, the step 4 is a bit value for each of the determined bit insertion periods as starting points of the upstream peak value or the downside peak value within the interval between the upper peak value or the lower peak value having a time interval coinciding with the insertion period of the determined bit. To match. When the bit values are mapped, the first bit value, e.g., for the corresponding insertion period when there is both an upward peak value larger than the upper limit threshold value and a downward peak value smaller than the lower limit threshold value in each of the determined insertion periods. 1 ', otherwise, the complementary value of the first bit value, e.g.,' 0 ', for the corresponding insertion period. Further, in the case of this embodiment, if a value corresponding to autocorrelation is not detected, the upper / lower threshold is adjusted to perform again from step 2, and the generated bit sequence is '1' of the spread spectrum code. If the aberration characteristic of and '0' is not satisfied, the process is performed again from step 2.

본 발명에 따른 일 실시예에서는, 상기 주파수 성분의 레벨을 추출하는 단계는, 상기 컨텐트에 속하는 영상 프레임의 각 주파수 계수 블록의 일부 영역에 대한 계수의 크기가 반영된 신호를 생성한다.In an embodiment of the present disclosure, the extracting of the level of the frequency component may generate a signal reflecting the magnitude of the coefficient of the partial region of each frequency coefficient block of the image frame belonging to the content.

본 발명에 따른, 컨텐트에 워터마크 데이터를 검출하는 일 장치는, 대역확산 부호를 제공하는 부호 공급부와, 상기 컨텐트의 주파수 성분의 레벨을 추출하도록 구성된 신호 추출기와, 상기 추출되는 레벨의 변화에 근거하여 비트값을 대응시킴으로써 비트 시퀀스를 생성하도록 구성된 정보 추출부와, 상기 생성된 비트 시퀀스에 대해, 상기 부호 공급부에서 제공되는 대역확산 부호의 위상을 이동(shift)시키면서 상관성을 확인하고, 그 확인되는 상관성이 자기상관성에 해당할 때의 상기 대역확산 부호의 위상 이동량에 대응하는 값을 갖는 비트군을 결정하도록 구성된 워터마크 복호기를 포함하여 구성된다.According to an aspect of the present invention, there is provided an apparatus for detecting watermark data in a content, the apparatus comprising: a code supply unit providing a spread spectrum code, a signal extractor configured to extract a level of a frequency component of the content, and a change in the extracted level; And an information extracting unit configured to generate a bit sequence by matching bit values, and verifying correlation with the generated bit sequence while shifting a phase of a spread spectrum code provided from the code supplying unit. And a watermark decoder configured to determine a bit group having a value corresponding to the amount of phase shift of the spread spectrum code when the correlation corresponds to autocorrelation.

본 발명에 따른 일 실시예에서는, 상기 결정된 비트군을 포함하는 워터마크 데이터를 상기 워터마크 복호기로부터 수신하여 화면상에 표시되도록 인터페이스를 제어하도록 구성되어 있는 제어부가 더 포함된다.
In one embodiment according to the present invention, the control unit is further configured to control the interface to receive the watermark data including the determined bit group from the watermark decoder and to display on the screen.

본 발명에 따른 적어도 하나의 실시예는, 워터마크 훼손을 위한 공격(attack)에 강인한 특성을 가지고 있어 컨텐트에 실린 워터마크의 보존성이 우수하여 워터마크가 실린 컨텐트로부터의 워터마크의 검출을 보장하므로, 컨텐트 제작자의 저작권 등의 보호를 보다 충실하게 하는 효과를 갖는다.At least one embodiment according to the present invention has a characteristic that is robust to an attack for watermark damage, thereby ensuring the preservation of the watermark contained in the content to ensure the detection of the watermark from the watermarked content. This protects the copyright of the content creator and the copyright of the content creator.

또한, 본 발명에 따른 적어도 하나의 실시예는, 워터마크를 삽입(embedding)하기 위한, 컨텐트에 대한 재가공 과정이 단순해 지도록 함으로써 워터마크 삽입을 위한 장치의 설계/제조 등에 소요되는 비용을 절감시키는 효과를 갖는다.
In addition, at least one embodiment according to the present invention reduces the cost of designing / manufacturing a device for embedding a watermark by simplifying a reprocessing process for content for embedding a watermark. Has an effect.

도 1a는 수신자 제한을 두는 CAS (Conditional Access System)가 장착된 일반적인 영상수신장치의 구성 예를 도시한 것이고,
도 1b는 CAS가 장착된 영상수신장치를 통해 영상을 불법적으로 복제/배포하는 과정을 도식적으로 나타낸 것이고,
도 2는 본 발명의 일 실시예에 따른, 워터마크를 영상에 삽입하는 장치의 구성을 예시한 것이고,
도 3은 본 발명의 일 실시예에 따라, 영상신호에 워터마크가 삽입되는 과정을 개괄적으로 나타낸 흐름도이고,
도 4는 본 발명의 일 실시예에 따라, 워터마크 데이터를 인코딩하기 위해 이용하는 pn 시퀀스의 자기상관성 특성을 도시한 것이고,
도 5는 본 발명의 일 실시예에 따라, 워터마크 데이터를 구성하는 단위 비트군들이 pn 시퀀스들로 인코딩되는 과정을 예시한 것이고,
도 6a 및 6b는 본 발명의 다른 일 실시예들에 따라, 워터마크 데이터를 구성하는 단위 비트군들이 pn 시퀀스들로 인코딩되는 과정을 각기 예시한 것이고,
도 7은, 본 발명의 또 다른 일 실시예에 따라, 워터마크 데이터가 하나 또는 다수의 pn 시퀀스들로 인코딩되는 과정을 예시한 것이고,
도 8은, 본 발명의 일 실시예에 따라, 영상 픽처 또는 슬라이스(slice)를 구성하는 각 블록(block)에서 pn 시퀀스의 비트에 따라 계수를 조정할 영역의 예들을 도시한 것이고,
도 9는, 본 발명의 일 실시예에 따라, 워터마크 페이로드(payload)의 각 비트를 영상 프레임들에 인코딩하는 예를 도시한 것이고,
도 10은, 본 발명의 다른 일 실시예에 따라, 워터마크 페이로드의 각 비트를 영상 프레임들에 인코딩하는 예를 도시한 것이고,
도 11은, 본 발명의 또 다른 일 실시예에 따라, 워터마크 페이로드의 각 비트를 영상 프레임들에 인코딩하는 예를 도시한 것이고,
도 12a 및 12b는, 본 발명의 실시예들에 따라, 타 장치에 워터마킹 기능이 구현되는 예들을 각각 도시한 것이고,
도 13은 본 발명의 일 실시예에 따라, MPEG-2 포맷의 디지털 압축 영상 데이터에 워터마크 데이터를 삽입하는 수단의 구성을 예시한 것이고,
도 14는 본 발명의 다른 일 실시예에 따라, H.264/AVC 포맷의 디지털 압축 영상 데이터에 워터마크 데이터를 삽입하는 수단의 구성을 예시한 것이고,
도 15는 본 발명의 일 실시예에 따른, 워터마크 데이터의 검출장치의 구성을 예시한 것이고,
도 16은, 본 발명의 일 실시예에 따른 워터마크 데이터의 검출방법의 흐름을예시한 것이고,
도 17은, 본 발명의 일 실시예에 따라, 워터마크가 실린 컨텐트로부터 검출되는 에너지 레벨신호의 이론적 파형을 예시한 것이고,
도 18a 및 18b는, 본 발명의 일 실시예에 따라, 워터마크가 실린 컨텐트로부터 검출되는 에너지 레벨신호와 그로부터 유도되는 에너지 비율신호의 이론적 파형을 각각 예시한 것이고,
도 19는, 본 발명의 일 실시예에 따라, 워터마크가 실린 컨텐트로부터 획득된 에너지 레벨신호로부터 유도된 에너지 비율신호의 실제 파형의 한 예를 도시한 것이고,
도 20a는, 본 발명의 일 실시예에 따라, 워터마크가 실린 컨텐트로부터 획득된 에너지 비율신호로부터 비트값들을 복원하기 위해 상기 에너지 비율신호를 각 구간으로 분할하는 예를 도시한 것이고,
도 20b는, 본 발명의 일 실시에에 따라, 워터마크가 실린 컨텐트로부터 획득된 에너지 비율신호에서 비트 예상구간의 경계점들을 도시한 것이고,
도 21은, 본 발명의 일 실시예에 따라, 워터마크가 실린 컨텐트로부터 획득된 에너지 비율신호에서 비트 시퀀스를 복원하기 위한 시작점과 비트 삽입주기가 결정되는 예를 도시한 것이고,
도 22는, 본 발명의 일 실시예에 따라, 워터마크가 실린 컨텐트로부터 획득된 에너지 비율신호에 대해, 결정된 비트 삽입주기에 따라 비트값들을 할당하는 예를 도시한 것이고,
도 23은, 본 발명의 일 실시예에 따라, 워터마크 삽입을 위해 사용되는 대역확산 부호의 ‘1’과 ‘0’의 개수차 특성을 예시한 것이고,
도 24는, 본 발명의 일 실시예에 따라, 결정된 비트 삽입주기에 따라 비트값을 할당함으로써 생성된 비트 시퀀스에서 대역확산 부호의 상관성을 검출하기 위한 대상구간을 선정하는 예를 도시한 것이고,
도 25는, 본 발명의 일 실시예에 따라, 동기 대역확산 부호( 파일럿 pn 시퀀스 )의 검출간격에 따라, 각 동기 대역확산 부호간의 비트 구간들을 워터마크 데이터를 검출하기 위한 구간으로 사용되는 예를 도시한 것이다.
Figure 1a shows an example of the configuration of a general video receiving apparatus equipped with a CAS (Conditional Access System) with a receiver restriction,
1b schematically illustrates a process of illegally copying / distributing an image through an image receiving apparatus equipped with a CAS.
2 illustrates a configuration of an apparatus for embedding a watermark into an image according to an embodiment of the present invention.
3 is a flowchart schematically illustrating a process of embedding a watermark in a video signal according to an embodiment of the present invention.
FIG. 4 illustrates autocorrelation characteristics of a pn sequence used for encoding watermark data according to an embodiment of the present invention.
5 illustrates a process of encoding unit bit groups constituting watermark data into pn sequences according to an embodiment of the present invention.
6A and 6B illustrate a process of encoding unit bit groups constituting watermark data into pn sequences according to another embodiment of the present invention.
FIG. 7 illustrates a process of encoding watermark data into one or multiple pn sequences according to another embodiment of the present invention.
8 illustrates examples of regions for adjusting coefficients according to bits of a pn sequence in each block constituting an image picture or a slice, according to an embodiment of the present invention.
9 illustrates an example of encoding each bit of a watermark payload into image frames according to an embodiment of the present invention.
10 illustrates an example of encoding each bit of a watermark payload into image frames according to another embodiment of the present invention.
11 illustrates an example of encoding each bit of a watermark payload into image frames according to another embodiment of the present invention.
12A and 12B illustrate examples in which a watermarking function is implemented in another device according to embodiments of the present invention.
13 illustrates a configuration of means for inserting watermark data into digital compressed video data in MPEG-2 format according to an embodiment of the present invention.
14 illustrates a configuration of means for inserting watermark data into digital compressed image data of H.264 / AVC format according to another embodiment of the present invention.
15 illustrates a configuration of an apparatus for detecting watermark data according to an embodiment of the present invention.
16 illustrates a flow of a method of detecting watermark data according to an embodiment of the present invention.
17 illustrates a theoretical waveform of an energy level signal detected from watermarked content, in accordance with an embodiment of the present invention.
18A and 18B illustrate theoretical waveforms of an energy level signal detected from a watermarked content and an energy ratio signal derived therefrom, respectively, according to an embodiment of the present invention.
19 illustrates an example of an actual waveform of an energy ratio signal derived from an energy level signal obtained from watermarked content, according to an embodiment of the present invention.
20A illustrates an example of dividing the energy ratio signal into sections to recover bit values from an energy ratio signal obtained from watermarked content, according to an embodiment of the present invention.
20B illustrates boundary points of bit prediction intervals in an energy ratio signal obtained from watermarked content according to one embodiment of the present invention;
21 illustrates an example in which a starting point and a bit insertion period for restoring a bit sequence in an energy ratio signal obtained from a watermarked content are determined according to an embodiment of the present invention.
FIG. 22 illustrates an example of allocating bit values according to a determined bit insertion period with respect to an energy ratio signal obtained from watermarked content according to an embodiment of the present invention.
23 illustrates an aberration characteristic of '1' and '0' of a spread spectrum code used for watermark embedding according to an embodiment of the present invention.
24 illustrates an example of selecting a target section for detecting correlation of a spread spectrum code in a bit sequence generated by allocating bit values according to a determined bit insertion period according to an embodiment of the present invention.
FIG. 25 illustrates an example in which bit sections between sync band spread codes are used as sections for detecting watermark data according to detection intervals of a sync spread spectrum code (pilot pn sequence) according to an embodiment of the present invention. It is shown.

이하에서는, 본 발명에 따른, 컨텐트에 워터마크(watermark)를 삽입/검출하는 방법 및 장치의 다양한 실시예들에 대해 첨부된 도면을 참조하여 상세히 설명한다.Hereinafter, various embodiments of a method and apparatus for embedding / detecting a watermark in content according to the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명의 일 실시예에 따른, 워터마크를 영상신호에 삽입하는 장치의 구성도로서, 사용자와의 입출력을 수행하는 사용자 인터페이스부(130)와, 워터마크 삽입동작의 수행을 위한 데이터 등이 저장되는 메모리부(140)와, 대역확산 부호( 또는 “잡음 부호”라고도 한다. )인 P/N (pseudonoise, 또는 pseudo-random noise) 시퀀스 (이하, "pn 시퀀스"라 함)를 공급하는 PN 공급부(120)와, 설정된 워터마크에 대응하는 정보를 영상신호에 인코딩하는, 즉 워터마크를 부호화하는 워터마킹부(110)와, 상기 구성요소들의 동작을 전체적으로 제어하는 제어부(100)를 포함하여 구성된다. 상기 사용자 인터페이스부(130)는 사용자의 입력을 수신하기 위한 키보드, 마우스, 터치패드와 같은 키 입력수단(131)과, 사용자에게 적절한 입력 안내화면 및/또는 처리상황 등을 출력하는 디스플레이부(132)를 포함한다.2 is a configuration diagram of an apparatus for embedding a watermark into an image signal according to an embodiment of the present invention, and a user interface unit 130 performing input / output with a user and data for performing a watermark embedding operation. And a memory unit 140 for storing the same, and a P / N (pseudonoise, or pseudo-random noise) sequence (hereinafter, referred to as a "pn sequence") which is a spread spectrum code (or "noise code"). The PN supply unit 120, the watermarking unit 110 for encoding information corresponding to the set watermark into the video signal, that is, encoding the watermark, and the controller 100 for controlling the operations of the components as a whole. It is configured to include. The user interface 130 may include key input means 131 such as a keyboard, a mouse, and a touch pad for receiving a user input, and a display 132 for outputting an appropriate input guide screen and / or processing status to the user. ).

도 2에 예시된 장치는, 도 3에 예시된 본 발명에 따른 워트마킹 방법의 일 실시예의 흐름에 따라, 사용자로부터 설정되는 워터마크에 대응되는 정보를 영상신호에 인코딩하는 데, 이하에서는 도 2의 장치에서 수행되는 동작을 도 3에 예시된 흐름도와 병행하여 상세히 설명한다.The apparatus illustrated in FIG. 2 encodes information corresponding to a watermark set by a user into a video signal according to the flow of an embodiment of the watermarking method according to the present invention illustrated in FIG. 3. Operations performed in the apparatus of the present invention will be described in detail in parallel with the flowchart illustrated in FIG. 3.

먼저, 본 발명의 실시예들에서 사용하고 있는 대역확산부호 또는 잡음부호인 pn 시퀀스에 대해 설명한다. pn 시퀀스는 도 4와 같은 쐐기(thumb)모양의 자기상관성(auto-correlation)의 특성을 갖는다. 즉, 위상(phase)이 일치할 때만 높은 상관성(correlation) 값(401)을 가지고, 위상이 상호 일치하지 않을 때에는 '-1'의상관성 값을 갖는다. 이러한 자기상관성 특성을 이용하면 임의의 신호에 삽입된 pn 시퀀스의 이동량(shift), 즉 이동된 위상을 알 수 있다. 따라서, 본 발명의 실시예들에서는 영상신호에 워터마킹을 할 때 pn 시퀀스의 이동량을 인코딩 자원의 하나로 사용한다. pn 시퀀스의 이동량을 정보의 인코딩 자원으로 사용함으로써 인코딩된 정보는 에러에 대한 강인성이 높아진다.First, a pn sequence that is a spread spectrum code or a noise code used in embodiments of the present invention will be described. The pn sequence has a characteristic of wedge-shaped auto-correlation as shown in FIG. 4. That is, it has a high correlation value 401 only when the phases coincide, and has a correlation value of '-1' when the phases do not coincide with each other. Using this autocorrelation characteristic, it is possible to know the shift, that is, the shifted phase, of the pn sequence inserted into an arbitrary signal. Therefore, in embodiments of the present invention, when watermarking a video signal, the movement amount of the pn sequence is used as one of encoding resources. By using the movement amount of the pn sequence as an encoding resource of the information, the encoded information becomes more robust to errors.

사용자는 상기 사용자 인터페이스부(130)를 통해 워터마크로서 사용할 데이터를 입력한다. 이 때의 데이터는 사용자 자신이나 자신이 속한 단체 등을 식별케 할 수 있는 이름, 명칭, 또는 약칭 등을 나타낼 수 있는 것이 바람직하다. 이와 같이 입력되는 워터마크 데이터는 상기 메모리부(140)에 저장된다(S31). 그리고, 사용자는 상기 사용자 인터페이스부(130)를 통해 워터마킹 동작을 수행시키거나 또는 동작모드를 설정한다. 이 때 설정되는 동작모드는, 예를 들면, 영상 입력이 검출되면 워터마킹 삽입이 수행되게 하는 '자동'모드가 있을 수 있다.The user inputs data to be used as a watermark through the user interface 130. The data at this time is preferably able to represent a name, name, or abbreviated name, etc., which can identify the user himself or his organization. The watermark data input in this way is stored in the memory unit 140 (S31). The user performs a watermarking operation or sets an operation mode through the user interface 130. The operation mode set at this time may be, for example, an 'automatic' mode in which watermarking insertion is performed when an image input is detected.

상기 요청에 따라 상기 제어부(100)는 상기 메모리부(140)에 설정되어 있는 워터마크 데이터를 상기 워터마킹부(110)에 전달하면서 워터마킹 동작이 시작되도록 상기 워터마킹부(110)에 명령한다. 상기 워터마크 데이터를 상기 워터마킹부(110)에 전달하는 방식은, 상기 메모리부(140)에 저장되어 있는 워터마크 데이터 전체를 한번에 전달하거나, 워터마크 데이트를, 1번의 영상신호에의 pn시퀀스 인코딩으로 처리될 수 있는 비트량 단위로 분할( 이와 같이 분할되는 비트량에 대해서 이하에서는 '단위 비트량'이라 한다. )하여 상기 워터마킹부(110)에 전달된다. 후자의 경우에는, 영상신호에의 pn시퀀스 인코딩의 완료신호가 상기 워터마킹부(110)로부터 수신되면 다음의 단위 비트량만큼 전달하는 과정을 반복적으로 수행하게 된다.In response to the request, the controller 100 instructs the watermarking unit 110 to start the watermarking operation while transferring the watermark data set in the memory unit 140 to the watermarking unit 110. . The watermark data is transmitted to the watermarking unit 110 in such a manner that the entire watermark data stored in the memory unit 140 is transferred at once, or the watermark data is transmitted to one video signal in a pn sequence. It is divided into bit unit units that can be processed by encoding (hereinafter, referred to as 'unit bit amount' for the bit amount divided in this manner) and is transmitted to the watermarking unit 110. In the latter case, when the completion signal of the pn sequence encoding to the video signal is received from the watermarking unit 110, the process of transferring the next unit bit amount is repeatedly performed.

한편, 상기 제어부(100)는, 워터마킹 동작의 시작을 상기 워터마킹부(110)에 명령하기 전에, 상기 사용자 인터페이스부(130)를 통한 사용자의 워터마킹 모드를 수신하여 이에 따라 결정되는 변수들을 상기 워터마킹부(110)에 설정해 둘 수도 있다. 이러한 방식으로 설정되는 변수에는, pn 시퀀스의 양자화된 이동량(quantized shift), 사용할 pn 시퀀스 수 등이 포함된다. 이러한 변수에 대한 상세한 설명은 후술한다. 다음에 설명하는 실시예에서는, pn 시퀀스의 이동량은 양자화되지 않고, 즉 pn 시퀀스는 1비트씩 연속적으로 이동(shift)되며, 사용하는 pn 시퀀스도 단일이다.Meanwhile, the control unit 100 receives the watermarking mode of the user through the user interface unit 130 before instructing the watermarking unit 110 to start the watermarking operation, and determines the variables determined accordingly. The watermarking unit 110 may be set. Variables set in this manner include the quantized shift of the pn sequence, the number of pn sequences to use, and the like. A detailed description of these variables will be given later. In the embodiments described below, the shift amount of the pn sequence is not quantized, that is, the pn sequence is shifted continuously by one bit, and the pn sequence to be used is also single.

상기 워터마킹부(110)는 인가된 워터마크 데이터에서 첫번째 단위 비트량을 확인하고 그 단위 비트량이 나타내고 있는 값에 따라 상기 PN 공급부(120)에서 제공되는 pn 시퀀스의 이동량을 결정하게 되는 데(S33), 이하에서는 이에 대해서 보다 상세히 설명한다.The watermarking unit 110 checks the first unit bit amount in the applied watermark data and determines the movement amount of the pn sequence provided from the PN supply unit 120 according to the value indicated by the unit bit amount (S33). This will be described in more detail below.

N 주기를 갖는 pn 시퀀스는 N개의 유일무이(unique)한 이동(shift) 값을 나타낼 수 있다. 그런데, 통상 n비트 크기에 의해 생성되는 pn 시퀀스의 주기(N)는 '2n-1'이 되므로 N개의 이동 경우수 모두를 인코딩에 이용하여도 표현할 수 있는 정보는 n 비트에 의한 경우수(2n)보다 1개가 적다. 따라서 n비트로 표현할 수 있는 정보 중 임의의 특정한 한 개의 값( 예를 들어 모두 0 또는 모두 1 )은 사용하지 않는다. 예를 들어, 주기(N)가 127인 pn 시퀀스를 사용하는 경우, 7비트로써 표현할 수 있는 값( "0000000","0000001",...,"1111111" ), 128개에서 "0000000" 또는 "1111111"값은 제외한 127개의 값을 pn 시퀀스의 이동량으로 인코딩할 수 있는 값으로 제한한다. 그리고, pn 시퀀스의 주기 N에 따라, 도 4에서 보는 바와 같이 자기상관성의 최대값(401)이 결정되는 데, 최대값은 오검출의 확률과 직접적으로 관련이 있다. 즉, 오검출의 확률은 N의 값에 반비례한다. 그런데, N이 크면 워터마크 데이터의 삽입에 필요한 시간이 길어진다. 따라서 본 발명에 실시예들에서는, 에러에 대한 강인성( 낮은 오검출 확률 )과 워터마킹에 필요한 시간의 적절한 균형(trade-off)에 의해 N값을 선정한다. 본 발명에 따른 다른 실시예에서는, 워터마킹 시간이 중요한 요소인 경우에는 N을 작게 설정하고, 그렇지 않은 경우에는 N을 크게 설정한다. 본 발명에 따른 일 실시예에서는, 상기 제어부(100)는 N에 대한 값도 상기 사용자 인터페이스부(130)를 통해 입력받을 수 있으며, 그 입력된 N에 대한 값을 상기 PN 공급부(120)에 설정하게 되며, 상기 PN 공급부(120)는 설정된 N의 주기를 갖는 pn 시퀀스를 생성하기 위해 다양한 비트크기의 pn 코드 생성기들을 구비하고 있을 수 있다.A pn sequence having N periods may represent N unique shift values. However, since the period (N) of the pn sequence generated by the n-bit size is generally '2 n -1', the information that can be expressed even when all N shift cases are used for encoding is the number of cases by n bits ( One less than 2 n ). Therefore, any particular one value (eg all 0s or all 1s) of information that can be represented by n bits is not used. For example, using a pn sequence with period N of 127, a value that can be represented as 7 bits ("0000000", "0000001", ..., "1111111"), or 128 to "0000000" or The value of " 1111111 " is limited to 127 values except for values that can be encoded by the shift amount of the pn sequence. According to the period N of the pn sequence, as shown in FIG. 4, the maximum value 401 of the autocorrelation is determined, and the maximum value is directly related to the probability of false detection. In other words, the probability of false detection is inversely proportional to the value of N. However, when N is large, the time required for the insertion of watermark data becomes long. Therefore, in the embodiments of the present invention, the N value is selected by an appropriate trade-off between the robustness against errors (low false detection probability) and the time required for watermarking. In another embodiment according to the present invention, if watermarking time is an important factor, N is set small, otherwise N is set large. In one embodiment according to the present invention, the control unit 100 may also receive a value for N through the user interface unit 130, and set the value for the input N to the PN supply unit 120. The PN supply unit 120 may include pn code generators of various bit sizes to generate a pn sequence having a set period of N.

본 발명에 따른 다른 일 실시예에서는, 상기 PN 공급부(120)는 워터마킹에 사용할 pn 시퀀스를 하나 또는 그 이상 저장하고 있는 테이블이다. 본 실시예에서는, 주기가 각기 다른 pn 시퀀스별로 그룹핑한 복수개의 pn 시퀀스 테이블이 구비되며, 상기 제어부(100)는 설정된 N에 대한 값에 따라 상기 워터마킹부(110)에 사용할 pn 시퀀스 테이블을 지정하는 명령을 내리게 된다.In another embodiment according to the present invention, the PN supply unit 120 is a table that stores one or more pn sequences to be used for watermarking. In the present exemplary embodiment, a plurality of pn sequence tables grouped by pn sequences having different periods are provided, and the controller 100 designates a pn sequence table to be used for the watermarking unit 110 according to a value for the set N. Will give a command.

pn 시퀀스의 이동량이 결정되면(S33), 상기 워터마킹부(110)는, 상기 PN 공급부(120)로부터 획득한, 또는 지정된 테이블에서 읽어 온 pn 시퀀스를 상기 결정된 이동량만큼 시프트시킨다. 그리고 이와 같이 해당 비트들이 시프트된 pn 시퀀스의 각 비트 값을 입력되는 영상신호에 인코딩한다(S35). 이와 같은 인코딩은 설정된 워터마크 데이터의 단위 비트량단위로 이루어진다. 전체적으로는, 도 5에 예시된 바와 같이, 설정된 워터마크 데이터(L bits)(501)가 k개의 단위 비트량들(각 m bits)로 구성되는 경우에, k 개의 pn 시퀀스들( 각 pn 시퀀스들은 각 m 비트가 표현하고 있는 값에 따라 위상이 결정되어 있다. 즉, 비트가 시프트되어 있다. )에 해당하는 비트 시퀀스(511)가 영상신호에 인코딩된다. 워터마크에 해당하는 모든 데이터( L bits )가 각 pn 시퀀스의 위상으로 인코딩된 pn 시퀀스들로 구성되는 비트 시퀀스(511)를 "워터마크 페이로드" (watermark payload)라고 한다.When the movement amount of the pn sequence is determined (S33), the watermarking unit 110 shifts the pn sequence obtained from the PN supply unit 120 or read from the designated table by the determined movement amount. In this way, each bit value of the pn sequence having the corresponding bits shifted is encoded into the input video signal (S35). Such encoding is performed in units of a unit bit amount of the set watermark data. In total, as illustrated in FIG. 5, when the set watermark data (L bits) 501 is composed of k unit bit amounts (each m bits), k pn sequences (each pn sequences The phase is determined according to the value represented by each m bit, that is, the bit is shifted. A bit sequence 511 composed of pn sequences in which all data (L bits) corresponding to a watermark is encoded in a phase of each pn sequence is called a "watermark payload".

본 발명에 따른 다른 실시예에서는, 도 6a에 예시된 바와 같이, 상기 워터마킹부(110)는 워터마크 데이터의 검출이 용이하도록 하기 위해, 동기(sync) pn 시퀀스(601)를 워터마크 데이터가 인코딩되어 있는 워터마크 페이로드의 전단에 삽입한다. 동기 pn 시퀀스( 이하, "파일럿 pn 시퀀스"라 한다. )는 워터마크 검출의 동기화를 위한 것으로서 미리 정해져 있으며, 항상 고정된 위상을 갖는다. 동기화를 위한 파일럿 pn 시퀀스를 사용하게 되면, 워터마크 검출기에서는 먼저 파일럿 pn 시퀀스에 대한 상관성 값을 확인함으로써, 계속적으로 또는 일정주기로 반복되는 워터마크 페이로드의 타이밍을 알 수 있다. 파일럿 pn 시퀀스의 주기는, 워터마크 데이터가 인코딩되는 pn 시퀀스의 주기와 같거나 또는 상이하다.In another embodiment according to the present invention, as illustrated in FIG. 6A, the watermarking unit 110 may generate a sync pn sequence 601 in order to facilitate detection of watermark data. Insert in front of the encoded watermark payload. A synchronous pn sequence (hereinafter referred to as a "pilot pn sequence") is predetermined for synchronization of watermark detection and always has a fixed phase. When the pilot pn sequence for synchronization is used, the watermark detector first checks the correlation value for the pilot pn sequence, so that the timing of the watermark payload that is repeated continuously or at regular intervals can be known. The period of the pilot pn sequence is equal to or different from the period of the pn sequence in which the watermark data is encoded.

본 발명에 따른 또 다른 실시예에서는, 도 6b에 예시된 바와 같이, 워터마크 페이로드의 각 pn 시퀀스마다 그 전단에 파일럿 pn 시퀀스를 삽입할 수도 있다. 파일럿 pn 시퀀스를 빈번하게 삽입하면 동기화에는 도움이 되지만( 이로인해, 워터마크 데이터가 위상으로서 인코딩되어 있는 pn 시퀀스의 검출이 보다 빨라지는 이익은 있지만 ) 삽입해야 하는 전체 비트량이 많아져 워터마킹에 소요되는 시간이 길어지므로 워터마킹에서의 소요시간의 중요성에 따라서 파일럿 pn 시퀀스의 삽입빈도가 결정된다. In another embodiment according to the present invention, as illustrated in FIG. 6B, a pilot pn sequence may be inserted in front of each pn sequence of the watermark payload. Frequent insertion of pilot pn sequences can aid synchronization (this has the benefit of faster detection of pn sequences whose watermark data is encoded as phases), but requires more watermarking due to the larger amount of bits that need to be inserted Since the length of time required is longer, the frequency of insertion of the pilot pn sequence is determined according to the importance of the time required for watermarking.

본 발명에 따른 일 실시예에서는, 상기 제어부(100)는 파일럿 pn 시퀀스의 삽입빈도 또는 삽입방식에 대한 것을 상기 사용자 인터페이스부(130)로부터 입력받아 이를 지정하는 명령을 상기 워터마킹부(110)에 인가함으로써 상기 워터마킹부(110)가 지정된 모드에 따라 파일럿 pn 시퀀스가 워터마크 페이로드에 부가되도록 한다.In one embodiment according to the present invention, the control unit 100 receives a command for the insertion frequency or insertion method of the pilot pn sequence from the user interface unit 130 and specifies the command to the watermarking unit 110 By applying the watermarking unit 110, the pilot pn sequence is added to the watermark payload according to the designated mode.

전술한 실시예들에서는, 워터마크 데이터를 인코딩하는 데 이용되는 pn 시퀀스의 이동량을 연속적 변수로서 이용하였다. 즉, 주기 N의 pn 시퀀스에 대한 이동량의 경우수를 N으로 하여 단위 비트량을 결정하여 인코딩하였다. 본 발명에 따른 다른 실시예들에서는, 주기 N의 pn 시퀀스에 대한 이동량을 양자화시켜서 이용한다. 본 발명에 따른 일 실시예에서는, 주기 N의 pn 시퀀스의 이동량을 2p (p=1,2,3,4,...)의 값으로 제한하여 사용한다. 예를 들어, p=4로 정하여, pn 시퀀스가 시프트될 수 있는 값이 0*16 (=0), 1*16 (=16), 2*16 (=32), 3*16 (=48) 등으로 제한하여 사용한다. 이와 같이 pn 시퀀스의 이동량을 양자화시켜 사용하면, 워터마크가 삽입된 영상신호의 일부가 늘어지거나 잘려 나감으로써 시간축 상으로 에러가 발생하여 미리 정해진( 즉, 양자화된 ) 위상 이외의 값이 나오더라도 보정할 수 있는 가능성이 생긴다. 상기와 같은 pn 시퀀스 이동량의 양자화는, 예를 들어 상기 2p에서의 p값은 사용자의 입력에 따라 상기 제어부(100)에 의해 상기 워터마킹부(110)에 설정된다.In the above embodiments, the shift amount of the pn sequence used to encode the watermark data is used as a continuous variable. That is, the unit bit amount is determined and encoded with N being the number of cases of the shift amount for the pn sequence of period N. In other embodiments according to the present invention, the shift amount for the pn sequence of period N is quantized and used. In one embodiment according to the present invention, the amount of movement of the pn sequence of period N is limited to a value of 2 p (p = 1,2,3,4, ...). For example, with p = 4, the values by which the pn sequence can be shifted are 0 * 16 (= 0), 1 * 16 (= 16), 2 * 16 (= 32), 3 * 16 (= 48) Limit to use. When the movement amount of the pn sequence is quantized in this manner, an error occurs on the time axis by stretching or cutting part of the watermark-embedded video signal and correcting even if a value other than a predetermined (ie, quantized) phase is produced. There is a possibility to do it. In the quantization of the pn sequence movement amount as described above, for example, the p value at 2 p is set in the watermarking unit 110 by the controller 100 according to a user input.

본 발명의 실시예에 따라, pn 시퀀스의 이동량을 양자화시켜 사용하면, 주기 N의 pn 시퀀스로써 표현할 수 있는 경우의 수가 감소하므로 pn 시퀀스에 1회 인코딩할 수 있는, 워터마크 데이터의 단위 비트량도 감소한다. 주기 N의 pn 시퀀스에 대해 연속적 이동량을 이용할 경우 n비트가 단위 비트량( 물론, 앞서 설명한 바와 같이 표현가능한 값은 1이 작은 '2n-1'이 된다. )이라고 가정한 경우, 이동량을 2p로 양자화시키게 되면, pn 시퀀스에 인코딩할 수 있는 경우 수는 N/2p로 감소한다. 따라서, 단위 비트량은, 표현가능한 값이 1이 작아지는 것을 무시하게 되면 'n-p'가 된다. 예를 들어, 주기 N이 127( =27-1 )인 경우, 연속적 이동량을 사용하는 경우 7비트가 단위 비트량이 되지만, 이동량을 16 (=24)으로 양자화시키면, 이동량 경우수는 0, 16, 32, 48,.., 112인 8 (=23)개로서 3 (=7-4)비트가 단위 비트량이 된다. 따라서, 본 실시예에서는, 주기 N( =2n-1 )의 pn 시퀀스의 이동량을 2p로 양자화시켜 사용하는 경우 워터마크 데이터를 'n-p'비트씩 pn 시퀀스에 인코딩시킨다. 즉, 앞서의 예에 대해서, 상기 워터마킹부(110)의 pn 시퀀스의 이동량 결정시(S33)에, 상기 워터마킹부(110)는 워터마크 데이터를 3비트 크기의 비트군(群)단위로 확인하고 각 비트군의 값이 "000"인 경우, pn 시퀀스의 이동량을 0, "001"인경우 16, "010"인 경우 32와 같은 식으로 결정한다.According to an embodiment of the present invention, when the amount of movement of the pn sequence is quantized and used, the number of cases that can be represented by the pn sequence of period N is reduced, so that the unit bit amount of the watermark data that can be encoded once in the pn sequence is also reduced. Decreases. If the continuous shift amount is used for the pn sequence of period N, the shift amount is 2 when the n bit is a unit bit amount (of course, the value that can be expressed as described above becomes '2 n -1' with a small value of 1). When quantized to p , the number is reduced to N / 2 p if it can be encoded in the pn sequence. Therefore, the unit bit amount becomes 'n-p' when negligible that the representable value becomes smaller. For example, if the period N is 127 (= 2 7 -1), 7 bits becomes the unit bit amount when the continuous shift amount is used, but if the shift amount is quantized to 16 (= 2 4 ), the shift amount case is 0, As 8 (= 2 3 ), which are 16, 32, 48, ..., 112, 3 (= 7-4) bits are the unit bit amount. Therefore, in the present embodiment, when using the amount of movement of the pn sequence in period N (= 2 n -1) by 2 p , the watermark data is encoded in the pn sequence by 'n-p' bits. That is, with respect to the above example, at the time of determining the movement amount of the pn sequence of the watermarking unit 110 (S33), the watermarking unit 110 converts the watermark data into bit group units having a 3-bit size. If the value of each bit group is "000", the movement amount of the pn sequence is determined as 0, 16 for "001", or 32 for "010".

본 발명에 따른 다른 실시예에서는, pn 시퀀스의 이동 양자화를 2의 배수 중 하나를 선택하지 않고 임의의 수, 예를 들면 임의의 소수를 선택할 수도 있다. 예를 들면, 양자화를 위한 기준 수(R)를 3으로 하는 경우, 양자화된 이동량은 0, 3, 6, 9, 12,..와 같이 되고, 5인 경우에는 0, 5, 10, 15,..와 같이 된다. 이 때는, (N/R)=2S를 만족하는 S의 최대값이 단위 비트량이 된다. 본 실시예에서는, 양자화된 이동량의 경우수가, 결정된 S에 의한 2S보다 더 많을 수가 있다. 따라서, 이 경우에는 양자화된 이동량의 경우수에 대해서 부분적으로 인코딩에 이용하지 않거나 다른 특수한 용도의 신호전송을 위하여 이용할 수도 있다. In another embodiment according to the present invention, the moving quantization of the pn sequence may be selected any number, for example, any prime number, without selecting one of multiples of two. For example, when the reference number R for quantization is 3, the quantized shift amount is as follows: 0, 3, 6, 9, 12, ..., and in the case of 5, 0, 5, 10, 15, Becomes like In this case, the maximum value of S that satisfies (N / R) = 2 S is the unit bit amount. In the present embodiment, the number of cases of the quantized movement amount may be larger than 2 S by the determined S. Therefore, in this case, the number of quantized shifts may not be used for encoding, or may be used for signal transmission for other special purposes.

본 발명에 따른 일 실시예에서는, pn 시퀀스의 이동량뿐만 아니라, 사용하는 pn 시퀀스의 종류에도 워터마크 데이터를 인코딩한다. 앞서 설명한 실시예에서와 같이, pn 시퀀스의 이동량을 양자화시켜 이용하면 pn 시퀀스로 인코딩할 수 있는 단위 비트량이 상대적으로 감소한다. 이를 보상하기 위해, 주기 N이 큰 pn 시퀀스를 채택할 수도 있다. 하지만, 이는 워터마크 페이로드의 크기를 증가시키므로 워터마킹에 있어서 불리해지는 데, 본 실시예는 이러한 불리한 점을 보상할 수 있다. 도 7은 본 실시예에 따라 pn 시퀀스가 선택되어 인코딩에 사용되는 예를 도시한 것으로서, 짧은 주기 N의 pn 시퀀스들의 풀(710)에 속한 pn 시퀀스가, 상기 제어부(100)의 입력 비트열에 따라 상기 PN 공급부(120)에서 발생되도록 하거나 또는 선택출력되도록 함으로써, 상기 pn 시퀀스 풀(710)에 속한 하나의 pn 시퀀스가 워터마크 페이로드로 선택되는 경우에 대해서도 정보가 인코딩될 수 있도록 한다(711). 상기 pn 시퀀스의 풀(710)에 속한 pn 시퀀스의 수가 2q개( 본 발명의 설명의 편의를 위해 2의 지수개로 예를 들지만, 2의 지수가 아닌 수의 pn 시퀀스들로써 pn 시퀀스의 풀을 구성할 수도 있다. )이면, 상기 pn 시퀀스 풀(710)에서 하나의 pn 시퀀스를 선택하는 데 있어서, q 비트크기의 비트군의 정보를 인코딩할 수 있다.In one embodiment according to the present invention, the watermark data is encoded not only in the amount of movement of the pn sequence but also in the type of the pn sequence to be used. As in the above-described embodiment, when the movement amount of the pn sequence is quantized and used, the amount of unit bits that can be encoded into the pn sequence is relatively reduced. To compensate for this, a pn sequence having a large period N may be adopted. However, this increases the size of the watermark payload, which is disadvantageous in watermarking, and this embodiment can compensate for this disadvantage. FIG. 7 illustrates an example in which a pn sequence is selected and used for encoding according to the present embodiment, wherein a pn sequence belonging to a pool 710 of short period N pn sequences is based on an input bit string of the controller 100. By generating or selecting output from the PN supply unit 120, information may be encoded even when one pn sequence belonging to the pn sequence pool 710 is selected as a watermark payload (711). . The number of pn sequences belonging to the pool of pn sequences 710 is 2 q (For the convenience of the description of the present invention, for example, the exponent of 2, but the number of pn sequences of non-exponential numbers of 2 constitute a pool of pn sequences) If), in selecting one pn sequence from the pn sequence pool 710, it is possible to encode information of a bit group of q bit size.

본 실시예에서는, 도 7에 도시된 예에서와 같이, 상기 워터마킹부(110)가, 상기와 같이 선택된 하나의 pn 시퀀스(720)에 대해서, 전술한 바와 같이 양자화된 이동량 중에서 하나의 이동량을 선택(721)함에 따라 워터마크 데이터에 속하는 비트군이 추가적으로 인코딩된다. 앞서 설명한 예에서와 같이, 주기 N (=2n-1)인 pn 시퀀스의 이동량을 2p로 양자화한 경우, 경우수는 2n-p가 되므로, 상기 q 비트외에 추가적으로 'n-p' 비트를 인코딩할 수 있게 된다. 즉, 단위 비트량은 'q+(n-p)'가 된다. 예를 들어, n=7 인 주기 127인 pn 시퀀스를 사용하고, pn 시퀀스 풀내의 pn 시퀀스 수가 16 (=24, q=4)개이며, p=4로 8개의 위상 (0, 16, 32, 48,..,112) 만을 이동량으로 사용하게 되면, 하나의 pn 시퀀스를 통해 7 {=4+(7-4)} 비트크기의 비트군을 인코딩할 수 있다. 물론, 도 7에 예시된 바와 같이, k개의 pn 시퀀스열로써 워터마크 페이로드(730)를 구성한다면, 그 워터마크 페이로드로써 인코딩할 수 있는 정보의 크기는 다시 k배만큼 증가하여 총 k*{q+(n-p)} 비트가 된다. 본 실시예에에 따라 워터마크 데이터가 인코딩되어 구성되는 워터마크 페이로드에 대해서도, 도 6a 또는 6b에서 예시된 방법에 따라 동기를 위한 파일럿 pn 시퀀스가 부가될 수도 있다.In the present embodiment, as in the example shown in FIG. 7, the watermarking unit 110 selects one movement amount from the quantized movement amounts as described above with respect to one pn sequence 720 selected as described above. By selecting 721, the bit group belonging to the watermark data is additionally encoded. As in the above-described example, when the amount of movement of the pn sequence having a period N (= 2 n -1) is quantized to 2 p , the number of cases becomes 2 np , so that an additional 'np' bit can be encoded in addition to the q bit. Will be. That is, the unit bit amount is 'q + (np)'. For example, using a pn sequence with period 127 with n = 7, the number of pn sequences in the pn sequence pool is 16 (= 2 4 , q = 4), and 8 phases (0, 16, 32) with p = 4. If only, 48, .., 112) is used as the movement amount, a bit group of 7 {= 4 + (7-4)} bit sizes can be encoded through one pn sequence. Of course, if the watermark payload 730 is composed of k pn sequence sequences, as illustrated in FIG. 7, the size of information that can be encoded with the watermark payload is increased by k times, resulting in a total k *. {q + (np)} bits. Also for a watermark payload in which watermark data is encoded according to the present embodiment, a pilot pn sequence for synchronization may be added according to the method illustrated in FIG. 6A or 6B.

전술한 실시예들 중 하나의 실시예에 따라 구성되는 워터마크 페이로드 또는 파일럿 pn 시퀀스가 부가되어 있는 워터마크 페이로드는, 후술하는 방법에 따라, 연속적으로 또는 주기적으로 영상신호에 인코딩된다(S35). 이 때 연속모드 또는 인코딩 주기는 상기 제어부(100)에 의해 설정되며, 연속모드 또는 주기는 상기 사용자 인터페이스부(130)를 통해 사용자가 지정할 수 있다.The watermark payload to which the watermark payload or pilot pn sequence configured according to one of the above-described embodiments is added is continuously or periodically encoded in the video signal according to the method described below (S35). ). In this case, the continuous mode or the encoding period is set by the controller 100, and the continuous mode or the period may be designated by the user through the user interface 130.

다음으로, 상기 워터마킹부(110)가 상기 워터마크 페이로드에 속하는 각 비트를 입력되는 영상신호에 인코딩하는, 본 발명에 따른 일 실시예의 방법에 대해 설명한다. 본 발명에 따른 일 실시예의 설명을 위해 상기 워터마킹부(110)에 입력되는 영상신호는 임의의 코덱(codec)에 의해 디지털로 압축된 영상데이터임을 가정한다. 물론, 입력되는 영상신호가 아날로그 영상신호인 경우에는, 도 2의 장치에는 그 아날로그 영상신호를 디지털 압축 영상데이터로 변환하여 상기 워터마킹부(110)에 인가하는 앞서 언급한 전처리 과정을 수행하는 코덱부가 추가적으로 구성될 수 있다. 이 때의 코덱부는, MPEG-2 방식, H.264/AVC 방식, 그 외의 공지된 인코딩방식들 중 하나의 방식로 입력 영상신호를 인코딩할 수 있다.Next, a description will be given of a method of an embodiment according to the present invention, in which the watermarking unit 110 encodes each bit belonging to the watermark payload into an input video signal. For the purpose of describing the exemplary embodiment of the present invention, it is assumed that the image signal input to the watermarking unit 110 is image data which is digitally compressed by an arbitrary codec. Of course, when the input video signal is an analog video signal, the apparatus of FIG. 2 converts the analog video signal into digital compressed video data and applies the above-described preprocessing process to the watermarking unit 110. The additional may be further configured. In this case, the codec unit may encode the input video signal using one of MPEG-2, H.264 / AVC, and other known encoding methods.

본 발명의 일 실시예에 따라, 상기 워터마킹부(110)에 입력되는 디지털 압축 영상 데이터는, 실시간 영역에서 주파수 영역으로 변환된 신호이며, 변환된 영상 프레임은 화소값 대신 각 주파수 성분의 크기를 나타내는 변환계수(transform coefficient)( 예를 들어, 이산여현변환방식에 의한 변환계수 )들을 포함하고 있다. 각 주파수 성분에 대한 변환계수를 알기 위해서는 상기 워터마킹부(110)가 입력되는 디지털 압축 영상 데이터에 대해 적절한 전처리(pre-processing) 과정을 수반할 수도 있다. 이러한 전처리 과정에 대해서는 후술한다. 상기 변환계수들은 화면의 특성과 밀접한 관계가 있는데 엣지(edge) 부분에서는 고주파에 해당하는 변환계수들의 값이 크고, 평탄(plat) 영역에서는 해당 변환계수의 값이 작거나 0인 경우가 많다. 통상 영상신호에서 장면의 전환이 일어나지 않는 경우 대체적으로 화면은 시간에 따라 연속적으로 변하므로 한 화면 전체에서의 특정대역의 주파수의 에너지( <= 변환계수로서 반영되어 있는 )도 시간의 따른 변화가 크게 발생하지 않는다. 따라서, 본 발명에 따른 일 실시예에서는, 상기 워터마킹부(110)가 현재 인코딩할 워터마크 페이로드의 비트 값에 따라 영상 프레임에서의 특정 주파수대역의 변환계수( 즉, 에너지 )를 변화시킨다. 예를 들면, 인코딩할 비트값이 '1'인 경우 특정대역의 에너지를 크게 하고, 예를 들어 해당 변환계수를 2배하고, '0'일 때는 변화시키지 않거나, 또는 에너지를 감소( 예를 들어, 해당 변환계수를 1/2배하고 )시키는 것으로 할 수도 있다. 도 8은, 영상 프레임을 구성하는 8x8 단위 블럭을 나타내고 있는데, 본 발명의 일 실시예에 따라 그 블록에서 비트값에 따라 변환계수를 조정할 특정한 영역(801, 802 ,803 또는 804)을 보여주고 있다( 변환계수들로 이루어진 단위블럭의 상기 각 영역(801, 802 ,803 또는 804)은 특정 주파수 대역과 각기 대응된다 ). 물론, 도 8의 블록에 예시된 영역을 조합하여 그에 해당하는 변환계수들을 조정할 수도 있다. 위와 같은, 비트값에 따른 변환계수의 수정은 영상 프레임 전체에 대해 수행할 수도 있고, 영상 프레임내의 정해진 일부 영역에 대해 수행할 수도 있다. 또한 본 발명에 따른 일 실시예에서는, 특정한 조건을 두어 그 조건을 만족시키는 영역에 대해서만 변환계수를 변화시킴으로써 화질의 손상을 최소화 할 수도 있다. 상기의 특정한 조건에는, 한 영상 프레임내에서 타 영역의 변환계수들에 비해 지정된 비율이상 작은 변환계수들인 지의 여부도 포함된다. 본 발명의 일 실시예에 따라, 프레임 전체에 대해 에너지를 변화시키게 되면, 워터마크의 제거를 위한 프레임 크로핑(cropping)이나 회전 등의 공격에 보다 강인해지는 특성을 가질 수 있다. 또한, 본 발명의 일 실시예에 따라, 비트값을 코딩하기 위해 주파수 계수, 즉 변환계수들을 변화시킬 때도 해당 계수들이 모두 같은 변화량을 갖도록 할 필요는 없으며, 각 변환계수에 대한 변화량을 적절히 선택할 수도 있다. 예를 들어, 각 변환계수의 크기에 따라 그 변화량이나 변화비율을 달리할 수도 있다. 비트값을 인코딩하기 위한 에너지의 변화량이 클수록, 검출 가능성은 높이지만 그에 비해 화질은 더 저하시키게 된다. 따라서 본 발명에 따른 실시예들에서는, 화질의 열화와 검출 가능성이 균형을 이룰 수 있는 최적의 계수 변화량을 결정하여 사용한다. According to an embodiment of the present invention, the digital compressed image data input to the watermarking unit 110 is a signal converted from a real-time domain to a frequency domain, and the converted image frame is a size of each frequency component instead of a pixel value. Transform coefficients (e.g., transform coefficients by the discrete cosine transform method) are included. In order to know the conversion coefficient for each frequency component, the watermarking unit 110 may involve an appropriate pre-processing process for the digital compressed image data input thereto. This pretreatment will be described later. The conversion coefficients are closely related to the characteristics of the screen. In the edge part, the conversion coefficients corresponding to the high frequency are large, and in the plat area, the conversion coefficients are often small or zero. In general, when there is no scene change in the video signal, the screen is continuously changed with time, so the energy of the frequency of a specific band (reflected as <= conversion coefficient) in the entire screen is also greatly changed with time. Does not occur. Therefore, in one embodiment according to the present invention, the watermarking unit 110 changes the conversion coefficient (ie, energy) of a specific frequency band in an image frame according to the bit value of the watermark payload to be currently encoded. For example, when the bit value to be encoded is '1', the energy of a specific band is increased, for example, the corresponding conversion coefficient is doubled, and when it is '0', it is not changed or the energy is reduced (for example, It is also possible to multiply the conversion factor by 1/2). FIG. 8 shows an 8x8 unit block constituting an image frame, and shows a specific region 801, 802, 803, or 804 in which the adjustment coefficient is to be adjusted according to the bit value in the block according to an embodiment of the present invention. (Each area 801, 802, 803, or 804 of the unit block of conversion coefficients corresponds to a specific frequency band, respectively). Of course, it is also possible to adjust the corresponding conversion coefficients by combining the regions illustrated in the block of FIG. As described above, the modification of the conversion coefficient according to the bit value may be performed for the entire image frame or may be performed for a predetermined portion of the image frame. In addition, in one embodiment according to the present invention, damage to the image quality may be minimized by changing the conversion coefficient only in a region where a specific condition is satisfied and the condition is satisfied. The above specific condition includes whether or not the conversion coefficients are smaller than a specified ratio in comparison with the conversion coefficients of other regions in one image frame. According to an embodiment of the present invention, when the energy is changed for the entire frame, the frame may be more resistant to attack such as cropping or rotation for removing the watermark. In addition, according to an embodiment of the present invention, even when changing the frequency coefficients, that is, the transform coefficients, to code the bit value, it is not necessary to make the coefficients all have the same amount of change, and the amount of change for each transform coefficient may be appropriately selected. have. For example, the amount of change or the rate of change may vary depending on the magnitude of each conversion coefficient. The larger the amount of change in energy for encoding the bit value, the higher the detectability but the lower the image quality. Therefore, in the embodiments according to the present invention, an optimal coefficient change amount that can be balanced between deterioration of image quality and detectability is used.

본 발명에 따른 실시예들에서는, 상기 워터마킹부(110)는, 현재 인코딩할 비트값에 따라 변환계수를 변화시켜야 하는 경우, 일정한 수의 시간적으로 연속되는 영상 프레임들에 대해서 각 프레임 또는 각 프레임내의 일부 영역에 속하는 단위 블럭들의 도 8의 영역(801,802,803 또는 804) 또는 조합된 영역의 변환계수( 주파수 계수 )들을 변화시킨다. 도 9는 이에 대해 예시한 것이다. 도 9에서는, 하나의 비트값에 대해 10개의 프레임을 대응시켜 주파수 계수를 변경 또는 유지시키고 있으나, 10개의 프레임은 단지 도시를 위한 것일 뿐 프레임 수, 즉 시(時)간격은 적절히 선택되며, 이 프레임 수( 시간격 )도 사용자의 입력에 따라 상기 제어부(100)를 통해 상기 워터마킹부(110)에 제한된 범위내에서 다양한 값이 설정될 수도 있다. In the embodiments according to the present invention, when the watermarking unit 110 needs to change a conversion coefficient according to a bit value to be currently encoded, each frame or each frame for a predetermined number of temporally consecutive image frames. The transform coefficients (frequency coefficients) of the regions 801, 802, 803 or 804 of FIG. 8 or the combined region of the unit blocks belonging to some regions in the image are changed. 9 illustrates this. In FIG. 9, the frequency coefficient is changed or maintained by mapping ten frames to one bit value, but the ten frames are for illustration only, and the number of frames, that is, the time interval, is appropriately selected. The number of frames (time interval) may also be set within a range limited to the watermarking unit 110 through the control unit 100 according to a user input.

도 9에서와 같이 연속된 각 프레임 군(901j)에 대해 변환계수값들을 증가 또는 유지시키게 되면, 이 후 워터마크 검출장치가 해당 영상신호의 특정 주파수 대역의 에너지( 변환계수 ) 레벨의 추이(910)를 검출하여 에너지가 증가된 시(時)구간(911)을 알 수 있게 되고, 이 시구간에 대해서는 그 값을 ‘1’로 ( 인코딩방식에 따라서는 ‘0’으로 ) 인지하고 그렇지 않은 시구간에 대해서는 '0'으로 인지할 수 있게 된다.As shown in FIG. 9, when the coefficient values are increased or maintained for each consecutive frame group 901 j , the watermark detection apparatus subsequently changes the energy (conversion coefficient) level of a specific frequency band of the corresponding video signal. 910 can be detected to know the time period 911 in which the energy is increased, and for this time period, the value is recognized as '1'('0' depending on the encoding method). The liver can be recognized as '0'.

본 발명에 따른 일 실시예에서는, 비트값에 따른 프레임의 에너지 변화를 I/P/B Intra/Inter/Bi-directional picture)의 모든 픽처에 대하여 수행한다. In one embodiment according to the present invention, the energy change of the frame according to the bit value is performed for all pictures of I / P / B Intra / Inter / Bi-directional picture.

본 발명에 따른 또 다른 일 실시예에서는, 시간적(temporal) 압축은 적용되지않고 공간적(spatial) 압축만이 적용된 I (Intra) 픽처에 대해서만 비트값에 따른 에너지 변화를 수행시킨다. 본 실시예는, 통상, 에너지가 변화된 계수가 I픽처에 존재하면, 그 계수에 의한 값은, 코덱에서는 움직임 추정/보상알고리즘에 의해 P/B 픽처의 계수에도 전파되는 특성을 이용한 것이다. I픽처에 대해서만 에너지 변화를 선택적으로 수행하므로 워터마킹을 위한 장치의 복잡성이 상대적으로 낮아진다. 본 실시예에서는, 도 10에 예시된 바와 같이, 워터마크 페이로드의 각 비트에 대해, 적어도 하나 이상의 I 픽처(1001j)가 존재하는 프레임군 또는 픽처군(1010j)을 대응시켜 인코딩한다. 즉 그 픽처군내의 I픽처의 계수를 변화(10011,10013) 또는 유지(10012)시킨다. 에너지를 변화시킨 효과는 해당 군내의 I픽처 이후에 나타나므로, 워터마크 페이로드 비트의 검출시에는 도 10에 예시된 각 픽처 군의 시작시점보다 소정 프레임 지연( 해당 픽처 군내에서 I픽처까지의 시간 )되어 나타난다. 본 발명에 따른 일 실시예에서는, 방송신호에서 적어도 하나의 I픽처가 삽입되어야 하는 제한시간 또는 그 보다 긴 시간에 속하는 프레임 수를 1비트 인코딩을 위한 프레임군으로 한다. 예를 들어, I 픽처가 0.5초 이하의 간격으로 전송되는 것을 규정하고 있는 ATSC 규격에 따른 영상신호에 대해서는 0.5초를 기준으로 하여( 1초당 30프레임인 경우, 15프레임당 ) 워터마크 페이로드의 1 비트씩 인코딩한다. In another embodiment according to the present invention, an energy change according to a bit value is performed only on an I (Intra) picture to which only spatial compression is applied without temporal compression. In the present embodiment, normally, when a coefficient whose energy is changed is present in an I picture, the value obtained by the coefficient uses a characteristic that the codec propagates to the coefficient of the P / B picture by a motion estimation / compensation algorithm. Since the energy change is selectively performed only for the I picture, the complexity of the device for watermarking is relatively low. In this embodiment, as illustrated in FIG. 10, for each bit of the watermark payload, a frame group or picture group 1010 j in which at least one I picture 1001 j exists is encoded correspondingly. In other words, the coefficients of the I pictures in the picture group are changed (1001 1 , 1001 3 ) or held (1001 2 ). Since the effect of changing the energy appears after the I picture in the group, when detecting the watermark payload bit, a predetermined frame delay (time from the start of each group of pictures illustrated in FIG. 10 to the I picture in the group of pictures). Appears. According to an embodiment of the present invention, the number of frames belonging to a time limit or a longer time period during which at least one I picture is inserted in a broadcast signal is a frame group for 1-bit encoding. For example, for an image signal according to the ATSC standard that specifies that an I picture is transmitted at intervals of 0.5 seconds or less, the watermark payload may be set based on 0.5 seconds (15 frames, if 30 frames per second). Encode by 1 bit.

본 발명에 따른 다른 일 실시예에서는, 도 11에 예시된 바와 같이, 워터마크 페이로드의 각 비트가 할당되는 프레임군간에 기준(reference) 에너지를 위한 기준 프레임군(1120j)을 할당한다. 기준 프레임군(1120j)에는, 워터마크 페이로드 비트가 할당되는 프레임군(1110j)과 동 수의 프레임들이 할당한다. 상기 기준 프레임군은 검출장치에서 에너지의 변화여부를 보다 용이하게 알 수 있게 한다. 즉, 장면의 전환 등에 의해 영상의 에너지 레벨이 시간에 따라 바뀌는 경우에도, 인접 기준 에너지에 대비한 워터마크 페이로드 비트에 의한 에너지의 상대적 변화를 잘 검출할 수 있는 역할을 한다. 도 11에 예시된 도면에서는, 기준 프레임군에 속하는 프레임과 '0'의 비트값이 인코딩된 프레임군(11102)에 속하는 프레임이 서로 구분되도록 채색되어 있으나, 이는 비트값이 인코딩되어 있다는 의미를 구분짓기 위한 것일뿐, '0'의 비트값이 인코딩되어 있는 프레임군(11102)의 에너지를 변화시키지 않았으므로 검출시에는 기준 프레임군의 에너지 레벨도 인접의 기준 프레임군의 에너지 레벨에서 크게 변동되지 않는다(1130). 물론, 앞서의 실시예에서 언급한 바와 같이, 본 실시예에서도 비트값 '0'으로 인코딩하는 경우, 프레임의 본래의 에너지를 유지시키는 대신 에너지를 상대적으로 감소시킬 수도 있다. In another embodiment according to the present invention, as illustrated in FIG. 11, a reference frame group 1120 j for reference energy is allocated between frame groups to which each bit of the watermark payload is allocated. The reference frame group 1120 j is assigned the same number of frames as the frame group 1110 j to which the watermark payload bit is allocated. The reference frame group makes it easier to know whether the energy is changed in the detection device. In other words, even when the energy level of the image changes with time due to the change of scene, the relative change in energy due to the watermark payload bit relative to the adjacent reference energy is well detected. In the drawing illustrated in FIG. 11, the frame belonging to the reference frame group and the frame value belonging to the encoded frame group 1110 2 are colored so as to be distinguished from each other, but this means that the bit value is encoded. It is only for distinguishing, and since the bit value of '0' has not changed the energy of the encoded frame group 1110 2 , the energy level of the reference frame group also varies greatly from the energy level of the adjacent reference frame group upon detection. (1130). Of course, as mentioned in the above embodiment, in the present embodiment, when encoding the bit value '0', the energy may be relatively reduced instead of maintaining the original energy of the frame.

전술한 실시예에서와 같이, 비트값에 따라 I 픽처( 또는 I 슬라이스 )에만 에너지 변경을 수행하는 경우, 상기 기준 프레임군에도 반드시 I 픽처가 포함되도록 한다. 물론, 본 실시예에 따라, 기준 프레임군과 비트값이 인코딩되는 프레임군의 프레임 수가 동일하게 유지되도록 하는 경우, 비트값이 포함되는 프레임군내에는 반드시 하나의 I픽처가 속하게 되는 영상구간을 프레임군으로 설정하게 되면, 기준 프레임군에도 반드시 I픽처가 하나 속하게 되는 요건이 자연스럽게 만족된다.As in the above-described embodiment, when the energy change is performed only on the I picture (or I slice) according to the bit value, the reference frame group must also include the I picture. Of course, according to the present embodiment, when the number of frames of the frame group in which the reference frame group and the bit value are encoded is kept the same, the frame period includes a video section in which one I picture belongs to the frame group including the bit value. If it is set to, the requirement that one I picture necessarily belongs to the reference frame group is naturally satisfied.

본 발명에 따른 일 실시예에서는, 워터마크 페이로드의 비트를 할당함에 있어서 기준 프레임군을 할당할 것인 지 아닌 지( 연속모드 )에 대한 조건도 상기 사용자 인터페이스(130)를 통해 상기 제어부(100)에 설정할 수도 있다. 상기 제어부(100)는, 이와 같이 설정되는 연속 또는 비연속 모드( 기준 프레임군 할당모드 )를 상기 워터마킹부(110)에 설정하여 그에 따른 워터마크 페이로드 비트의 영상 프레임에의 인코딩이 수행되도록 한다.In one embodiment according to the present invention, whether to allocate the reference frame group in allocating the bits of the watermark payload, the condition of whether the control mode (100) is also controlled through the user interface 130. It can also be set to). The controller 100 sets the continuous or discontinuous mode (reference frame group allocation mode) set in this way to the watermarking unit 110 so that the encoding of the watermark payload bits into the image frame is performed accordingly. do.

전술한 바와 같은 워터마크 페이로드의 각 비트의 인코딩 후에는, 상기 워터마킹부(110)는 그 값이 선택적으로 변화된 주파수 계수들을 갖는 영상 프레임들에 대해, 주파수 계수들의 블록들을 얻기 위한 전처리 과정의 역과정을 수행하여 입력된 디지털 압축 영상 데이터와 동일한 포맷의 영상 데이터를 완성하여 출력한다. 상기 언급한 전처리 과정의 예는 도 14와 15를 참조한 실시예들의 설명에서 보다 상세히 설명된다. 본 발명에 의한 일 실시예에 따라 워터마킹이, 디지털 압축 영상 데이터를 디코딩출력하는 AV 코덱의 전단에서 이루어지는 경우에는 상기 완성출력하는 영상 데이터는 AV 코덱에 인가된다. 도 2에 그 구성이 예시된 장치는 독립적인 장치로 구현될 수도 있지만, 도 12a에서와 같이 다른 기능을 수행하는 장치, 예를 들면 디지털 세톱박스내에 부품레벨(1210)로 구현될 수도 있다. 이와 같이 다른 장치의 부품레벨로 전술한 워터마킹이 구현되는 경우에는, 전술한 제어부(100)의 기능이 그 장치의 제어부에 통합적으로 구현된다. 또한, 부품레벨의 워터마킹 기능부(1222)는 도 12b에 예시된 바와 같이, 다른 기능의 부품, 예를 들어 CAS 기능부(1221)와 통합된 칩(1220)에 구현될 수도 있다. After encoding each bit of the watermark payload as described above, the watermarking unit 110 performs preprocessing to obtain blocks of frequency coefficients for image frames having frequency coefficients whose values are selectively changed. The reverse process is performed to complete and output image data having the same format as the input digital compressed image data. Examples of the aforementioned pretreatment process are described in more detail in the description of the embodiments with reference to FIGS. 14 and 15. According to an embodiment of the present invention, when watermarking is performed at the front end of the AV codec for decoding and outputting digital compressed image data, the completed output image data is applied to the AV codec. The device illustrated in FIG. 2 may be implemented as an independent device, but may also be implemented at the component level 1210 in a device that performs other functions as shown in FIG. 12A, for example, a digital set-top box. As described above, when the above-described watermarking is implemented at the component level of another device, the function of the above-described control unit 100 is integrally implemented in the control unit of the device. In addition, the component level watermarking function 1222 may be implemented in a chip 1220 integrated with a component of another function, such as the CAS function 1221, as illustrated in FIG. 12B.

한편, 상기 워터마킹부(110)( 또는 도 12a 또는 12b에서의 부품레벨의 워터마킹 기능부(1210,1222) )가 워터마킹 전후로 수행하는 앞서 언급된 전처리 과정 및 그 전처리의 역과정은 입력되는 디지털 압축 영상 데이터의 포맷에 따라 다르다. 이하에서는 두가지의 포맷에 대해 전처리 과정 및 그 역과정을 설명한다. 하지만, 본 발명은 하기에서 설명하는 제한된 조건 및/또는 예들로 그 범위가 국한되지 않으며, 전술한 워터마크 페이로드의 구성과 영상 프레임으로의 인코딩의 개념과 원리를 채용하는 것이라면 어떤 실시의 형태이던지 본 발명의 권리범위에 포함되는 것으로 보아야 한다.Meanwhile, the above-described preprocessing process and the reverse process of the preprocessing performed by the watermarking unit 110 (or the component level watermarking function units 1210 and 1222 in FIGS. 12A and 12B) before and after watermarking are input. It depends on the format of the digital compressed video data. The following describes the preprocessing and vice versa for the two formats. However, the present invention is not limited to the limited conditions and / or examples described below, and any embodiment may be employed as long as the present invention adopts the concept and principle of the above-described watermark payload and encoding into a video frame. It should be regarded as included in the scope of the present invention.

먼저, 상기 워터마킹부(110)( 또는 도 12a 또는 12b에서의 부품레벨의 워터마킹 기능부(1210,1222) )에 인가되는 디지털 압축 영상 데이터가 MPEG-2 포맷인 경우, 상기 워터마킹부(110)는 도 13에 예시된 바와 같이, I픽처 엔트로피(entropy) 디코더(1310)와, 워터마크 삽입부(1320)와, I픽처 엔트로피 인코더(1330)를 포함하여 구성될 수 있다. 상기 I픽처 엔트로피 디코더(1310)는 입력되는 디지털 압축 영상 데이터에서, 부호발생확률에 따라 정보압축된 데이터를 디코딩하여 I픽처에 해당하는 영상 데이터를 출력하는 전처리 과정을 수행한다. 이 영상 데이터는 주파수 성분의 계수, 예를 들어 DCT 계수들이다. 상기 워터마크 삽입부(1320)는 상기 I픽처 엔트로피 디코더(1310)로부터 입력되는 I픽처( 또는 I 슬라이스 )의 DCT 계수들에 대해서 앞서 설명한 다양한 실시예들 중 선택된 하나의 방식 또는 선택된 일부 결합방식에 따라 해당 I픽처의 DCT 계수들을 변화 또는 유지시킴으로써 워터마크가 삽입된 I픽처(1321)를 출력한다. 상기 I픽처 엔트로피 인코더(1330)는 상기 워터마크 삽입부(1320)에서 출력되는 I픽처를 기 정해진 방식에 따라 엔트로피 인코딩을 수행하여, 상기 I픽처 엔트로피 디코더(1310)에 입력되었던 원래의 디지털 압축 데이터로 변환한다. 상기의 엔트로피 인코딩, 워터마크 삽입, 그리고 엔트로피 인코딩의 순차적 과정에서, I픽처에 해당되지 않는 픽처(P 또는 B픽처)에 속하는 디지털 압축 데이터는 상기 I픽처 엔트로피 디코더(1310)에 의해 바이패스(bypass)되어(1340) 상기 I픽처 엔트로피 인코더(1330)에 전달되며, 상기 I픽처 엔트로피 인코더(1330)는 이렇게 바이패스된 디지털 압축 데이터에 자신이 엔트로피 압축한 I픽처의 압축 데이터를 해당 위치에 삽입함으로써 원래의 디지털 압축 영상 데이터를 출력하게 된다.First, when the digital compressed image data applied to the watermarking unit 110 (or the component level watermarking units 1210 and 1222 in FIGS. 12A and 12B) is MPEG-2 format, the watermarking unit ( As illustrated in FIG. 13, an I picture entropy decoder 1310, a watermark inserter 1320, and an I picture entropy encoder 1330 may be configured. The I picture entropy decoder 1310 performs a preprocessing process of decoding the information compressed data according to the code generation probability and outputting the image data corresponding to the I picture from the input digital compressed image data. This image data are coefficients of frequency components, for example DCT coefficients. The watermark inserter 1320 may be configured in one of the above-described embodiments or some selected combination schemes for DCT coefficients of an I picture (or I slice) input from the I picture entropy decoder 1310. Accordingly, the watermarked I picture 1321 is output by changing or maintaining the DCT coefficients of the I picture. The I picture entropy encoder 1330 performs entropy encoding on an I picture output from the watermark inserting unit 1320 according to a predetermined method, and thus the original digital compressed data input to the I picture entropy decoder 1310. Convert to In the sequential process of entropy encoding, watermark embedding, and entropy encoding, digital compressed data belonging to a picture (P or B picture) that does not correspond to an I picture are bypassed by the I picture entropy decoder 1310. 1340, which is transmitted to the I picture entropy encoder 1330, and the I picture entropy encoder 1330 inserts compressed data of an I picture entropy-compressed by the bypassed digital compressed data into a corresponding position. The original digital compressed image data is output.

다음으로, 상기 워터마킹부(110)( 또는 도 12a 또는 12b에서의 부품레벨의 워터마킹 기능부(1210,1222) )에 인가되는 디지털 압축 영상 데이터가 H.264/AVC 포맷인 경우에 대한 본 발명의 실시예를 설명한다. H.264/AVC 포맷은, 정보의 압축과정에서 인트라(intra) 예측(prediction)방식을 사용한다. 인트라 예측방식은 I 슬라이스(slice)의 인코딩시에 주변 블록으로 부터 DC값을 예측하여 현재 블록의 DC값을 코딩하는 방식이다. 즉, 한 슬라이스내에서, 하나의 블록이 그보다 순서상 앞선 인접 블록에 의존하는 모드가 존재할 수 있다. 따라서, 워터마크 비트를 삽입하기 위해 하나의 블록의 변환(transform) 계수를, 단순히 변화시키는 경우, 한 슬라이스내의 코딩순서상 뒤쪽에 있는 블록들에도, 의도하지 않았음에도 불구하고 그 계수의 변화가 순차적으로 반영될 수도 있다. 이러한 인코딩 방식의 특징을 감안하여 본 발명에 따른 일 실시예에서는, I 슬라이스에 대해서 영상신호로 디코딩한 후 DCT 변환하는 과정을 수행한다. 물론, 이 때의 DCT 변환과정에서 워터마크 페이로드 비트에 따른 DCT계수의 변경을 수행한다. 도 14는 이와 같은 과정을 수행하는 본 발명의 일 실시예에 따른 상기 워터마킹부(110)의 구성의 예로서, I슬라이스(slice) 엔트로피 디코더(1410)와, 인트라 디코더(1420)와, 픽셀 가산기(1430)와, 워터마크 삽입부(1440)와, 역변환기(1450)와, 인트라 예측기(1460)와, 인트라 인코더(1470)와, I슬라이스 엔트로피 인코더(1480)를 포함하여 구성될 수 있다.Next, a case in which the digital compressed image data applied to the watermarking unit 110 (or the component-level watermarking units 1210 and 1222 in FIGS. 12A and 12B) is in the H.264 / AVC format is described. An embodiment of the invention will be described. The H.264 / AVC format uses an intra prediction method in the compression of information. Intra prediction is a method of coding a DC value of a current block by predicting a DC value from a neighboring block when encoding an I slice. That is, within one slice, there may be a mode in which one block depends on neighboring blocks earlier in order. Thus, in the case of simply changing the transform coefficients of one block to insert a watermark bit, even for blocks later in the coding order within a slice, the coefficients change sequentially even though they are not intended. It may also be reflected. In consideration of the features of the encoding scheme, according to an embodiment of the present invention, a process of performing DCT conversion after decoding an I slice into an image signal is performed. Of course, during the DCT conversion process, the DCT coefficient is changed according to the watermark payload bit. 14 illustrates an example of a configuration of the watermarking unit 110 according to an exemplary embodiment of the present invention, which includes an I-slice entropy decoder 1410, an intra decoder 1420, and a pixel. The adder 1430, the watermark inserter 1440, the inverse transformer 1450, the intra predictor 1460, the intra encoder 1470, and the I-slice entropy encoder 1480 may be configured. .

상기 I슬라이스 엔트로피 디코더(1410)는, 입력되는 디지털 압축 영상 데이터에서, 부호발생확률에 따라 정보압축된 데이터를 디코딩하여 I 슬라이스에 해당하는 영상 데이터를 출력한다. 이 영상 데이터는 주파수 성분의 계수, 예를 들어 DCT 계수들이다. 상기 인트라 디코더(1420)는 입력되는 슬라이스의 각 매크로 블록에 대해 4x4의 서브블록단위(1411)로 역양자화와 역변환을 수행하여(1421) 픽셀(pixel) 레지듀얼(residual) 값을 갖는 서브블록(1421a)으로 변환한다. 한편, 해당 서브블록의 인트라 예측모드의 타입(type)에 따라 해당 서브블록에 대한 예측된 픽셀값을 갖는 서브블록(1422a)을, 먼저 복원된 인접 서브블록의 픽셀값으로부터 구성한다(1422). 상기 픽셀 가산기(1430)는, 상기 예측된 서브블록(1422a)의 픽셀값을 상기 서브블록(1421a)의 픽셀 레지듀얼 값에 가산하여 원래의 픽셀값을 갖는 서브블록(1431)으로 복원한다. 이와 같이 복원된 픽셀값을 갖는 서브블록은 다음 서브블록의 픽셀값 복원에 이용될 수 있다(S1430). 상기 워터마크 삽입부(1440)는 상기와 같이 복원된 4x4 서브블록들로 구성된 8x8 블록(1432)에 대해 DCT 변환을 수행함으로써 앞서 언급한 전처리 과정을 완료한다. 상기 전처리 과정이 완료됨으로써 획득된 변환된 DCT 계수를 갖는 8x8 블록(1441)에 대해, 앞서 설명한 다양한 실시예들 중 선택된 하나의 방식 또는 선택된 일부 결합방식에 따라 블록내의 DCT 계수들을 변화 또는 유지시킴으로써 워터마크 페이로드의 비트가 삽입된 8x8 블록(1442)를 출력하고, 상기 역변환기(1450)는 워터마크 페이로드의 비트가 삽입된 8x8 블록(1442)에 대해 다시 IDCT를 수행하여 픽셀값의 블록(1451)으로 변환한다. 상기 인트라 예측기(1460)는, 상기 픽셀값의 블록(1451)을 4x4 서브블록으로 분할하고, 각 분할된 서브블록에 대한 원래의 인트라 예측모드의 타입을 그대로 사용(S1422)하여, 인접 서브블록으로부터 예측 픽셀값의 블록(1461)을 만든 후, 그 예측 블록의 픽셀값을 해당 서브블록(1462)의 픽셀값에서 차감하여 픽셀 레지듀얼 서브블록(1463)을 출력한다. 이와 같은 픽셀 레지듀얼 서브블록(1463)은 상기 인트라 예측기(1460)에서 순차적으로 출력되며, 각 픽셀 레지듀얼 서브블록들(1463)은 상기 인트라 인코더(1470)에서 DCT 변환과 양자화를 거쳐 DCT 레지듀얼 서브블록(1471)으로서 상기 I슬라이스 엔트로피 인코더(1480)에 인가된다. 상기 I슬라이스 엔트로피 인코더(1480)는 입력되는 DCT 레지듀얼 서브블록의 데이터에 대해 엔트로피 인코딩을 수행하고, I슬라이스가 아니어서 상기 I슬라이스 엔트로피 디코더(1410)로부터 바이패스된 디지털 압축 데이터(S1410)에 자신이 엔트로피 압축한 I슬라이스의 압축 데이터를 해당 위치에 삽입함으로써 원래의 디지털 압축 영상 데이터를 출력하게 된다.The I-slice entropy decoder 1410 decodes the information-compressed data according to the code generation probability from the input digital compressed image data and outputs image data corresponding to the I slice. This image data are coefficients of frequency components, for example DCT coefficients. The intra decoder 1420 performs inverse quantization and inverse transformation on each macroblock of an input slice in a 4x4 subblock unit 1411 (1421) and has a subblock having a pixel residual value (1421). 1421a). Meanwhile, according to the type of the intra prediction mode of the subblock, a subblock 1422a having a predicted pixel value for the subblock is configured from the pixel values of the neighboring subblock reconstructed first. The pixel adder 1430 adds the pixel value of the predicted subblock 1422a to the pixel residual value of the subblock 1421a to reconstruct the subblock 1431 having the original pixel value. The subblock having the reconstructed pixel value may be used to reconstruct the pixel value of the next subblock (S1430). The watermark inserting unit 1440 completes the above-described preprocessing process by performing DCT transformation on the 8x8 block 1432 composed of the 4x4 subblocks reconstructed as described above. For an 8x8 block 1441 having the transformed DCT coefficients obtained by completing the preprocessing, the water may be changed or maintained by changing or maintaining the DCT coefficients in the block according to one of the various embodiments described above or some selected combination. The 8x8 block 1442 into which the bits of the mark payload are inserted is outputted, and the inverse transformer 1450 performs IDCT on the 8x8 block 1442 into which the bits of the watermark payload are inserted, thereby performing a block of pixel values ( 1451). The intra predictor 1460 divides the block 1451 of the pixel value into 4 × 4 subblocks, and uses the original intra prediction mode type for each divided subblock as it is (S1422). After the block 1461 of the predicted pixel value is generated, the pixel residual subblock 1463 is output by subtracting the pixel value of the predicted block from the pixel value of the corresponding subblock 1462. Such pixel residual subblocks 1463 are sequentially output from the intra predictor 1460, and each pixel residual subblocks 1463 are DCT residuals through DCT transformation and quantization in the intra encoder 1470. It is applied to the I-slice entropy encoder 1480 as a subblock 1471. The I-slice entropy encoder 1480 performs entropy encoding on the data of the input DCT residual subblock, and is not I-slice to digital compressed data S1410 bypassed from the I-slice entropy decoder 1410. The original digital compressed image data is output by inserting the compressed data of the I slice entropy compressed by itself into the corresponding position.

도 13과 14를 참조하여 설명한, 본 발명에 따른 워터마크 데이터의 인코딩 방법의 실시예들에서는, 입력 영상 데이터에서 I 픽처 또는 슬라이스에 대해서만 주파수 성분에 대한 변환계수를 선택적으로 변화시켰다. 하지만, 본 발명은 인터(inter) 모드로 인코딩되어 있는 픽처 또는 슬라이스에 대해서도 영상 재인코딩(re-encoding) 과정을 적용함으로써 중간과정에서 얻어지는 변환계수를 선택적으로 변화시킬 수 있다. 따라서, 본 발명은, 구현의 용이성을 위해 실시예로서 설명하고 있는 I픽처 또는 슬라이스에 대한 변환계수의 선택적 조정으로 제한되는 것은 아니다.In the embodiments of the method of encoding watermark data according to the present invention described with reference to FIGS. 13 and 14, a transform coefficient for a frequency component is selectively changed only for an I picture or a slice in the input image data. However, the present invention can selectively change the conversion coefficient obtained in an intermediate process by applying an image re-encoding process to a picture or slice encoded in an inter mode. Accordingly, the present invention is not limited to the selective adjustment of the transform coefficients for I pictures or slices described as examples for ease of implementation.

이상에서 상세히 설명한 다양한 실시예들 중 하나 또는 여러 실시예들의 조합에 따른 하나의 방법에 의해, 워터마크 페이로드가 계속적으로 또는 일정 주기로 반복되어 인코딩된 영상 데이터가 타 장치에 전달되어 그 장치의 디코딩과정을 거쳐 화면 출력되거나 또는 녹화된다.By one method according to one of the various embodiments described above or a combination of several embodiments, the watermark payload is continuously or periodically repeated, and the encoded image data is transferred to another device to decode the device. The screen is output or recorded through the process.

이하에서는, 상기와 같이 화면 출력되거나 또는 녹화 후 재생되는 화면을 촬영하여 획득한 또는 타 장치로 전송된 영상 컨텐트로부터 워터마크를 검출하는 방법에 대해 상세히 설명한다. 이하에서 상세히 설명되는 워터마크 검출과정에서는 본 발명의 이해를 돕기 위해 제한된 실시예로써 구체적으로 설명된다. 이러한 제한된 예들의 제시로 인해, 전술한 인코딩방법의 다양한 실시예들의 하나 또는 그 들의 결합된 방법에 의해 인코딩된 워터마크에 대한 검출방법에 대한 설명이 생략될 수도 있다. 하지만, 이하에서 설명하는 구체적인 검출방법의 원리와, 전술한 인코딩방법의 역과정을 함께 고려한다면 그 설명이 생략된 워터마크 인코딩방법에 대한 검출방법은 자연스럽게 도출될 수 있다. 따라서, 본 발명에 따른 워터마크의 검출방법의 설명에서 구체적으로 또는 명시적으로 설명되어 있지 않은 경우에도 앞서 설명한 다양한 워터마크의 인코딩방법의 역과정에 따른 워터마크 검출이라면 어떠한 실시형태라도, 워터마크의 검출에 대한 이하의 구체적 방법을 근거로 청구하고 있는 본 발명의 워터마크 검출방법의 권리범위에 당연히 속하는 것으로 보아야 한다.Hereinafter, a method of detecting a watermark from image content obtained by capturing a screen outputted or reproduced after recording as described above or transmitted to another device will be described in detail. Watermark detection process described in detail below will be described in detail as a limited embodiment to aid the understanding of the present invention. Due to the presentation of such limited examples, the description of the detection method for the watermark encoded by one or a combination of the various embodiments of the above-described encoding method may be omitted. However, if the principle of the specific detection method described below and the reverse process of the above-described encoding method are considered together, the detection method for the watermark encoding method whose description is omitted can be naturally derived. Therefore, even if not specifically or explicitly described in the description of the watermark detection method according to the present invention, any embodiment of the watermark as long as watermark detection according to the reverse process of the various watermark encoding method described above, Naturally, it should be regarded as belonging to the right scope of the watermark detection method of the present invention, which is claimed on the basis of the following specific method for the detection of.

도 15는 본 발명의 일 실시예에 따른 워터마크 데이터의 검출장치의 구성을 예시한 것으로서, 입력되는 영상신호의 주파수 성분의 에너지를 검출하는 에너지 검출부(1510)와, 상기 에너지 검출부(1510)에서 출력되는 에너지 레벨 신호를 지정된 방식에 따라 변환하여 출력하는 신호 변환부(1520)와, 상기 신호 변환부(1520)에서 변환되어 출력되는 신호로부터, 워터마크 데이터가 인코딩되어 있는 비트 시퀀스를 검출하는 비트 추출부(1530)와, 기 지정된 pn 시퀀스를 발생시키는 또는 기 지정된 pn 시퀀스의 테이블을 저장하고 있는 PN 공급부(1541)와, 상기 비트 추출부(1530)에서 입력되는 비트 시퀀스에 대해 상기 PN 공급부(1541)에서 제공되는 pn 시퀀스를 적용하여 워터마크 데이터를 복호하는 워터마크 복호부(1540)와, 사용자와의 입출력을 수행하는 사용자 인터페이스부(1550)와, 상기 구성요소들의 동작을 전체적으로 제어하는 제어부(1500)와, 워터마크 검출 동작의 수행을 위한 데이터 등이 저장되는 메모리부(1501)를 포함하여 구성된다. 상기 사용자 인터페이스부(1550)는 사용자의 입력을 수신하기 위한 키보드, 마우스, 터치패드와 같은 키 입력수단(1551)과, 사용자에게 적절한 입력 안내화면 및/또는 처리상황 등을 출력하는 디스플레이부(1552)를 포함하며, 상기 PN 공급부(1541)는, 워터마킹을 위한 도 2의 장치에 있는 PN 공급부(120)가 사용한 하나 또는 복수의 pn 시퀀스와 동일한 pn 시퀀스를 상기 워터마크 복호부(1540)에 제공한다.FIG. 15 illustrates a configuration of an apparatus for detecting watermark data according to an embodiment of the present invention, wherein an energy detector 1510 for detecting energy of a frequency component of an input video signal, and the energy detector 1510 may be used. A bit for detecting a bit sequence in which watermark data is encoded, from a signal converter 1520 for converting the outputted energy level signal according to a specified scheme and outputting the signal, and a signal converted and output from the signal converter 1520. An extractor 1530, a PN supply unit 1541 for generating a predetermined pn sequence or storing a table of a predetermined pn sequence, and the PN supply unit (1) for the bit sequence inputted from the bit extractor 1530; A watermark decoder 1540 that decodes the watermark data by applying the pn sequence provided by step 1541, and a user interface that performs input / output with a user. It is configured to include a seubu 1550 and a controller 1500 and a memory unit 1501 in which data, etc. are stored for the implementation of the watermark detection operation for controlling the operation of the components as a whole. The user interface unit 1550 includes key input means 1551 such as a keyboard, a mouse, and a touch pad for receiving a user input, and a display unit 1552 for outputting an appropriate input guide screen and / or processing status to a user. The PN supply unit 1541 may include the same pn sequence as one or a plurality of pn sequences used by the PN supply unit 120 in the apparatus of FIG. 2 for watermarking, to the watermark decoder 1540. to provide.

도 15의 장치는, 도 16에 예시된 본 발명의 일 실시예의 검출방법의 흐름에 따라, 입력되는 영상신호로부터 워터마크 데이터를 검출하는 데, 이하에서는 도 15의 장치에서 수행되는 동작을 도 16에 예시된 흐름도와 병행하여 상세히 설명한다.The apparatus of FIG. 15 detects watermark data from an input video signal according to the flow of the detection method of the embodiment illustrated in FIG. 16. Hereinafter, an operation performed by the apparatus of FIG. 15 will be described. It will be described in detail in parallel with the flow chart illustrated in.

상기 에너지 검출부(1510)는 입력되는 영상신호의 각 프레임에서 워터마크 관련된 신호를 검출한다(S1610). 이 때 검출되는 신호는 도 8에 예시된 프레임내의 각 블록에서 워터마킹과 관련하여 이용하기로 약속된 영역(801,802,803,804) 또는 그 영역들의 조합에 의해 특정되는 주파수 계수들이 반영된 신호이다. 이 계수들의 합이나 또는 평균치가 상기 에너지 검출부(1510)에서 출력되는 데, 이 계수들의 합 또는 평균치는 해당 주파수 성분에 실린 세기(intensity) 또는 에너지를 반영하는 신호이다( 이하에서는, "에너지"로 약칭한다 ). 전술한 워터마킹 방법에서 워터마크 비트 '1'에 대해서는 에너지를 증가시켰으므로, 해당 프레임군에서는 에너지 레벨이 높은 신호가 출력된다. 상기 에너지 검출부(1510)는 입력되는 영상신호가 디지털 압축 영상 데이터인 경우에는 엔트로피 복호를 수행함으로써 각 프레임의 주파수 계수를 확인하여 전술한 에너지 검출을 수행하게 되고, 입력되는 영상신호가 아날로그 영상신호인 경우에는 이를 주파수 영역, 예를 들어 DCT 변환함으로써 각 프레임의 주파수 계수를 확인하게 된다. 다르게는, 아날로그 신호의 특정 주파수 대역( 도 8의 각 영역 또는 조합된 영역에 해당하는 주파수 대역 )의 에너지 레벨을 직접 검출할 수도 있다.The energy detector 1510 detects a watermark related signal in each frame of the input image signal (S1610). The signal detected at this time is a signal reflecting the frequency coefficients specified by the regions 801, 802, 803, 804 or a combination of regions promised to be used in connection with watermarking in each block in the frame illustrated in FIG. The sum or average of these coefficients is output from the energy detector 1510. The sum or average of these coefficients is a signal that reflects the intensity or energy carried in the frequency component (hereinafter, referred to as "energy"). Abbreviated). Since the energy is increased for the watermark bit '1' in the above watermarking method, a signal having a high energy level is output in the frame group. When the input image signal is digital compressed image data, the energy detector 1510 performs entropy decoding to check the frequency coefficient of each frame to perform the above-described energy detection, and the input image signal is an analog image signal. In this case, the frequency coefficient of each frame is checked by transforming the frequency domain, for example, DCT. Alternatively, the energy level of a specific frequency band (frequency band corresponding to each region or combined region of FIG. 8) of the analog signal may be directly detected.

전술한 도 11의 실시예에서, 워터마크 페이로드의 비트가 삽입되지 않는 기준 프레임군을 두었으므로, 도 11의 실시예에 의해 워터마크가 인코딩된 영상신호에서는 워터마크 비트의 삽입주기는 2개의 프레임군이 된다. 기준 프레임군을 두지 않는 실시예들( 도 9 및 10 )의 경우에는 물론, 1개 프레임군의 시구간이 워터마크 비트의 삽입주기가 될 것이다. 이하에서는 도 11에 예시된 실시예에 따라 워터마크 데이터가 인코딩된 영상신호가 수신되는 것을 전제로 본 발명의 일 실시예에 따른 워터마크의 검출방법에 대해 상세히 설명한다. 물론, 다른 실시예들( 도 9 및 10 )의 경우에도 후술하는 검출방법의 원리를 해당 실시예에 맞게 적용하여 워터마크 데이터를 검출할 수 있다.In the above-described embodiment of FIG. 11, since a reference frame group in which the bits of the watermark payload are not inserted is provided, the insertion period of the watermark bits is two in the watermark encoded video signal according to the embodiment of FIG. It becomes a frame group. In the case of the embodiments (FIGS. 9 and 10) which do not have the reference frame group, the time period of one frame group will be the insertion period of the watermark bit. Hereinafter, a method of detecting a watermark according to an embodiment of the present invention will be described in detail on the premise that an image signal encoded with watermark data is received according to the embodiment illustrated in FIG. 11. Of course, in the case of other embodiments (FIGS. 9 and 10), the watermark data may be detected by applying the principle of the detection method described below according to the embodiment.

설명의 편의상, 워터마크 페이로드의 비트 주기에 속하는 프레임군들을 'GoWmP' (Group of Watermarked Pictures)로 표기한다. 상기 에너지 검출부(1510)에서 출력되는 에너지 레벨신호는 이론적으로는 도 17과 같은 신호파형이 되어야 하나, 영상신호의 밝기 등의 특성 차이로 인해 워터마크 검출시, 도 17에 근접하는 파형의 신호가 얻어지기 어렵다. 따라서, 후단의 상기 신호 변환부(1520)가, 워터마크 데이터 비트의 삽입 주기별 에너지의 레벨의 변화를 보다 쉽게 알기 위해 상기 에너지 검출부(1510)의 출력신호로부터 에너지의 이동 평균(moving average)의 비율 신호를 생성한다(S1620). 도 18a 및 18b는 상기 신호 변환부(1520)에서 변환출력되는 에너지 비율신호의 이론적인 파형의 예를 보여주고 있다. 본 실시예에서는, 4개의 영상 프레임간의 에너지 비율, 즉 {E(n+4)-E(n)}/E(n) 또는 E(n+4)/E(n) (여기서, n은 프레임의 순서상 번호)을 선택하였으나, 이러한 프레임간의 비율은 워터마크 인코딩 및/또는 검출 환경에 따라 얼마던지 다른 비율을 선택할 수 있음은 물론이다. 도 18a는 GoWmP가 15인 경우에 대한 것이고, 도 18b는 GoWmP가 30인 경우에 대한 것이다. 4개의 프레임간의 비율을 선택했기 때문에 도 18a 및 18b에서 보는 바와 같이, 상기 신호 변환부(1520)에서 출력되는 신호(1810,1820)는, 에너지 레벨이 변하는 천이구간에 대응하여 대략 4개의 프레임에 해당하는 구간을 갖는 피크치를 가질 것이고 나머지 구간에서는 평탄한 신호레벨을 가질 것이다. 상기 신호 변환부(1520)에서 출력되는 실제의 에너지 비율신호는 도 18a 또는 18b에 이론적으로 도시한 파형과는 다르게, 도 19에서와 같이 그 경계나 피크치가 다소 완만해지는 파형이 되는 데, 그럼에도 불구하고, 후단의 비트 추출부(1530)는, 도 19에서와 같이 얻어지는 신호에 상한 문턱값(threshold)가 하한 문턱값을, 상향 피크치와 하향 피크치에 적용함으로써 해당 신호에 '1'또는 0'이 삽입되어 있는 지를, 에너지 레벨신호보다는 용이하게 판단할 수 있다.For convenience of description, frame groups belonging to the bit period of the watermark payload are referred to as 'GoWmP' (Group of Watermarked Pictures). The energy level signal output from the energy detector 1510 should theoretically be a signal waveform as shown in FIG. 17. However, when a watermark is detected due to a characteristic difference such as brightness of an image signal, a signal having a waveform close to FIG. It is difficult to obtain. Accordingly, the signal converter 1520 of the rear stage may determine the moving average of the energy from the output signal of the energy detector 1510 in order to more easily know the change in the energy level for each insertion period of the watermark data bit. A ratio signal is generated (S1620). 18A and 18B show examples of theoretical waveforms of the energy ratio signal converted and output from the signal converter 1520. In this embodiment, the energy ratio between four image frames, i.e. {E (n + 4) -E (n)} / E (n) or E (n + 4) / E (n), where n is a frame (The number in the order of)), but the ratio between these frames can be selected to any other ratio depending on the watermark encoding and / or detection environment. FIG. 18A illustrates a case where GoWmP is 15, and FIG. 18B illustrates a case where GoWmP is 30. Since the ratio between the four frames is selected, as shown in FIGS. 18A and 18B, the signals 1810 and 1820 output from the signal converter 1520 are applied to approximately four frames corresponding to transition periods of changing energy levels. It will have a peak value with a corresponding interval and will have a flat signal level in the remaining intervals. The actual energy ratio signal output from the signal converter 1520 is different from the waveform shown in Figs. 18A or 18B in a theoretical manner, and as shown in Fig. 19, the boundary or peak value becomes a little smooth. In addition, the bit extractor 1530 of the rear stage applies a lower limit threshold value to an upstream peak value and a lower peak value to a signal obtained as shown in FIG. 19 so that '1' or 0 'is applied to the signal. Whether it is inserted can be judged more easily than the energy level signal.

상기 비트 추출기(1530)는 상기 에너지 비율 신호로부터 워터마크 데이터를 구성하는 비트, 즉 pn 시퀀스의 비트들을 추출하기 위한 과정(S1630)을 수행한다. 이를 위해 먼저, 상하한 문턱값의 초기값을 각각 선정하고(S1632), 하나 이상의 pn 시퀀스들로 구성되는 비트 시퀀스의 각 비트의 삽입 주기를 결정하며(S1634), 워터마크 페이로드가 시작되는 신호지점 또는 시작 프레임의 결정과정(S1636) 등을 수행한다. 먼저, 본 발명의 일 실시예에 따른 상하한 문턱값의 초기값 결정방법에 대해 상세히 설명한다. 본 실시예에서는 누적 분포를 이용한다. 워터마크 페이로드 비트( 즉, pn 시퀀스 비트, 이하 "pn 비트"라 약칭한다. )의 삽입 주기가 2개의 GoWmP인 실시예( 1개의 GoWmP는 기준 프레임군으로 사용되는 실시예 )의 경우, GoWmP=15라면 도 18a에서 보는 바와 같이, 상부로 솟은 부분의 누적 분포는 4/15 = 26%가 되고, GoWmP = 30이라면 상부로 솟은 부분은 4/30 = 14%가 된다. 따라서, 상기 비트 추출기(1530)는 입력되는 에너지 비율 신호를 영상 프레임의 주기( 통상, 1/30 초 )보다 훨씬 짧은 주기로 샘플링하고, 그 샘플링된 값들을 크기순으로 나열한 후 큰 값으로부터의 작은값으로 진행하면서 그 값들의 개수를 누적하여 누적값이 26% 또는 14%가 될 때의 해당 샘플링값을 초기 상한 문턱값으로 결정한다(S1632). 물론, 하한 문턱값에 대해서도 동일한 방식으로 결정한다. 26% 또는 14%로 결정하는 위와 같은 방법은 pn 비트의 삽입 주기를 알고 있을 때 적용할 수 있다. 본 발명에 따른 다른 일 실시예에서는, pn 비트의 삽입주기를 알지 못하는 경우에 누적 분포수의 기준을 7%~26%사이에서 결정한다. 바람직하게는 누적 분포수의 기준을 대략 15%로 설정한다. 이와 같이 설정하는 누적 분포수의 기준은 GoWmP가 60 프레임을 초과하지 않는 경우와, 앞서 설명한 에너지 비율 신호로 변환하는 프레임간 차(kf) ( 위의 {E(n+kf)-E(n)}/E(n) 또는 E(n+kf)/E(n)의 식에서 )가 4인 경우를 가정한 것이므로, GoWmP와 상기 kf값이 다른 경우에는 그에 따른 값을 상기의 계산 원리에 적용함으로써 얻어지는 적절한 값을 누적 분포의 기준값으로 결정하고, 누적 분포수에 그 기준값을 적용하여 상하한 문턱값의 초기값을 결정한다(S1632). 적절하다고 판단되는 임의의 값을 초기값으로 결정하여 사용하는 것이 가능한 이유는, pn 비트의 삽입 주기와 그것이 시작되는 프레임, 즉 시작점만 제대로 찾아지면 이 후 정확한 문턱값을 적응적으로 재설정할 수 있기 때문이다. 이 과정에 대해서는 후술한다.The bit extractor 1530 performs a process of extracting bits constituting watermark data, that is, bits of a pn sequence, from the energy ratio signal (S1630). To this end, first, the initial values of the upper and lower thresholds are respectively selected (S1632), the insertion period of each bit of the bit sequence composed of one or more pn sequences is determined (S1634), and the signal at which the watermark payload is started. The determination process of the point or the start frame (S1636) and the like are performed. First, a method of determining an initial value of upper and lower threshold values according to an embodiment of the present invention will be described in detail. In this embodiment, the cumulative distribution is used. For an embodiment in which the insertion period of the watermark payload bit (ie, pn sequence bit, hereinafter abbreviated as "pn bit") is two GoWmPs (one GoWmP is used as a reference frame group), GoWmP If = 15, as shown in FIG. 18A, the cumulative distribution of the top portion is 4/15 = 26%, and if GoWmP = 30, the top portion is 4/30 = 14%. Accordingly, the bit extractor 1530 samples the input energy ratio signal in a period much shorter than the period of the image frame (typically 1/30 second), lists the sampled values in order of magnitude, and then selects a small value from the large value. In operation S1632, the corresponding sampling value when the cumulative value becomes 26% or 14% by accumulating the number of values is determined as an initial upper limit threshold value. Of course, the lower limit threshold is determined in the same manner. The above method of determining 26% or 14% can be applied when the insertion period of the pn bit is known. In another embodiment according to the present invention, when the insertion period of the pn bit is not known, the reference of the cumulative distribution number is determined between 7% and 26%. Preferably, the basis of the cumulative distribution number is set to approximately 15%. The cumulative distribution number set in this way is based on the difference between the frames when the GoWmP does not exceed 60 frames and the difference between the frames (k f ) and the energy ratio signal described above ({E (n + k f ) -E ( n)} / E (n) or E (n + k f ) / E (n) is assumed to be 4, so if GoWmP and k f are different, calculate the value accordingly. An appropriate value obtained by applying the principle is determined as a reference value of the cumulative distribution, and the initial value of the upper and lower thresholds is determined by applying the reference value to the cumulative distribution number (S1632). The reason why it is possible to determine and use any value deemed appropriate as an initial value is that the correct threshold value can be adaptively reset after only the insertion period of the pn bit and the frame where it starts, i.e., the starting point. Because. This process will be described later.

다음으로, 상기 비트 추출기(1530)는, 위에서 결정한 초기 상하한 문턱값을 기준으로 pn 비트의 삽입주기를 파악한다. 이를 위해 먼저 에너지 레벨의 비율 신호를 상기 결정한 상하한 문턱값을 지나는(cross) 지점을 기준으로 각 구간을 분할한다. 도 20a는 이와 같은 방식에 따라 에너지 비율 신호가 분할되는 각 구간을 예시한 것이다. 예시된 도면에서, 에너지 비율 신호가 상하한 문턱값(THmax,THmin)을 지나는 지점에 대한 기준선(2010r)의 전후로 분할된 구간들(2020p, 2030q)이 존재한다. 분할된 각 구간에서 상한 문턱값(THmax)을 상향으로 지나는 지점부터 하한 문턱값(THmin)을 하향으로 지나는 지점까지가 고레벨 도출구간(2030p)이 되고, 하한 문턱값을 하향으로 지나는 지점부터 상한 문턱값을 상향으로 지나는 지점까지의 구간은 저레벨 도출구간(2020q)이 된다. 상기 비트 추출기(1530)는 에너지 비율신호를 위와 같이 각 구간으로 분할한 다음, 저레벨 도출구간(2020q)에서는 최저점을 추출하게 되고, 고레벨 도출구간(2030p)에서는 최고점을 추출한다. 도 20b는 이와 같은 방식에 따라 추출된 최저점(2031)과 최고점들(2021)이다. 이렇게 최고점과 최저점이 파악되면, 상기 비트 추출기(1530)는 각 추출된 인접된 최고점들간의 시간격 또는 인접된 최저점들간의 시간격( 이하에서는 이러한 시간격을 "비트 예상구간"으로 칭한다. )을 계산하여 저장한 후 저장된 시간격들을 조사하여 가장 빈도가 높은 시간격을 pn 비트의 삽입주기(BP)로 결정한다(S1634). Next, the bit extractor 1530 determines the insertion period of the pn bit on the basis of the initial upper and lower thresholds determined above. To this end, each interval is first divided based on a point at which the ratio signal of the energy level crosses the determined upper and lower thresholds. 20A illustrates each section in which the energy ratio signal is divided in this manner. In the illustrated figure, there are intervals 2020 p and 2030 q that are divided before and after the baseline 2010 r for the point where the energy ratio signal crosses the upper and lower thresholds THmax and THmin. In each divided section, the point from which the upper limit threshold THmax passes upward to the point that passes the lower threshold THmin downward becomes the high level derivation section 2030 p , and the upper limit from the point passing the lower threshold threshold downward. The section up to the point passing the threshold upwards becomes a low level derivation section 2020 q . The bit extractor 1530 divides the energy ratio signal into each section as described above, and then extracts the lowest point in the low level derivation section 2020 q , and extracts the highest point in the high level derivation section 2030 p . 20B shows the lowest point 2031 and the highest points 2021 extracted in this manner. When the highest point and the lowest point are identified in this way, the bit extractor 1530 refers to the time interval between each extracted adjacent highest point or the time interval between adjacent lowest points (hereinafter, such a time interval is referred to as a "bit prediction interval"). After calculating and storing the stored time intervals, the most frequent time interval is determined as an insertion period BP of pn bits (S1634).

본 발명에 따른 일 실시예에서는, 인접된 최고점과 최저점간의 시간격을 추출하고 이들의 통계치를 조사하여 최빈도의 시간격으로 pn 비트 삽입주기를 결정할 수도 있다. 본 실시예에서는, 결정 예상되는 비트 삽입 주기가 1개의 프레임군이 되므로, 워터마크 데이터의 삽입시에 기준 프레임군(11201, 11202)을 삽입하는 도 11의 실시예에 따른 워터마킹의 경우에는 그 기준 프레임군에 해당하는 신호구간에 대해서도 하나의 비트구간으로서 구분된다. 따라서, 본 실시예에서는, 도 11의 실시예에 따르는 경우, 상기 비트 추출기(1530)는, 이후에 결정되는 시작점( 시작 프레임 )부터, 결정된 비트 주기단위로 상기 분할된 각 구간에 대한 비트값을 할당할 때 번갈아 한비트씩 버림으로써 최종 비트 시퀀스를 생성하게 된다.In one embodiment according to the present invention, the time interval between adjacent highest and lowest points may be extracted, and their statistics may be examined to determine the pn bit insertion period at the most frequent time interval. In this embodiment, since the bit insertion period expected to be determined is one frame group, the watermarking according to the embodiment of FIG. 11 in which the reference frame groups 1120 1 and 1120 2 are inserted at the time of inserting the watermark data is performed. Is divided into one bit section for the signal section corresponding to the reference frame group. Therefore, in the present embodiment, according to the embodiment of FIG. 11, the bit extractor 1530 is configured to obtain a bit value for each divided section in units of determined bit periods, starting from a later determined start point (start frame). Alternately discards bits one by one to generate the final bit sequence.

본 발명에 따른 또 다른 일 실시예에서는, pn 비트의 삽입주기를 상기 사용자 인터페이스(1550)를 통해서 입력받아 사용할 수도 있다. 상기 사용자 인터페이스(1550)의 입력수단(1551)을 통해 설정되는 pn 비트 삽입주기는 상기 제어부(1500)를 통해 상기 비트 추출기(1530)에 설정되어 사용된다. 본 발명에 따른 일 실시예에서는, 상기와 같이 pn 비트 삽입주기가 외부로부터 설정되는 경우에도, 상기 비트 추출기(1530)는 전술한 pn 비트 삽입주기의 결정과정을 자동적으로 수행하여, 그에 따라 파악된 pn 비트 삽입주기를 상기 사용자 인터페이스(1550)를 통해 사용자에게 제시함으로써 입력설정한 삽입주기의 정확성 또는 자동 검출의 신뢰도를 사용자가 알 수 있게 한다.In another embodiment according to the present invention, an insertion period of a pn bit may be input through the user interface 1550. The pn bit insertion period set through the input unit 1551 of the user interface 1550 is set and used by the bit extractor 1530 through the control unit 1500. In one embodiment according to the present invention, even when the pn bit insertion period is set from the outside as described above, the bit extractor 1530 automatically performs the above-described determination process of the pn bit insertion period and is determined accordingly. By presenting the pn bit insertion period to the user through the user interface 1550, the user can know the accuracy of the input insertion period or the reliability of automatic detection.

pn 비트의 삽입주기의 결정 후에는, 상기 비트 추출기(1530)는 pn 시퀀스가 시작될 것으로 예상되는 지점( 또는 그에 해당하는 영상 프레임 )을 결정한다(S1636). 이 때, 결정되는 시작 지점( 프레임 )은, 도 21에 예시된 바와 같이, 앞서 결정한 pn 비트의 삽입주기(BP)와 일치하는 시구간을 갖는 비트 예상구간(2110)의 시작 지점(2101)이 된다. 도 21의 예는, 앞서 결정한 pn 비트 삽입주기(BP)가 25 프레임에 해당하는 시간일 때, 25 프레임에 해당하는 시구간을 갖는 비트 예상구간의 구간 시작점( 또는 그에 해당하는 프레임 )이, 비트값을 할당하기 위한 시작점으로 결정된 예를 보여주는 것이다. 이와 같이, 시작점이 결정되면, 상기 비트 추출기(1530)는 그 시작점부터 앞서 결정된 삽입주기(BP)마다 비트값을 할당한다. 이 때, 해당 삽입주기내에 상한 문턱값을 하향( 상부에서 하부로 )으로 지나는 지점이 있는 경우에는 '1'을, 그런 지점을 갖지 않는 경우에는 '0'을 할당한다(S1638). 물론, 실시예에 따라서는 '0'에 대해 에너지를 증가시키는 워터마크 인코딩을 할 수도 있으므로, 앞서와는 상반되게 비트값을 할당할 수도 있다. 본 발명의 일 실시예에 따라, pn 비트사이에 기준 프레임군을 삽입하는 경우에는, 도 22에 예시된 바와 같이, 각 비트 삽입주기마다 해당 비트값을 결정할 때, 해당 삽입주기내에 상한 문턱값과 하한 문턱값을 지나는 지점이 모두 있는 주기(2210i)에 대해서만 '1'의 값을 할당하고, 그렇지 않는 경우에 대해서는 '0'을 할당한다. 도 22의 예에서, 세번째 주기(2220)에는 상한 문턱값을 하향으로 지나는 지점(2221)이 존재하지만, 하한 문턱값을 지나는 지점은 갖지 않으므로(2222) '0'의 값이 할당되어 있다. 이러한 방식에 따라, 상기 비트 추출기(1530)는 워터마크 페이로드로 예상되는 비트 시퀀스를 생성한다(S1638).After determining the insertion period of the pn bit, the bit extractor 1530 determines a point (or an image frame corresponding thereto) at which the pn sequence is expected to start (S1636). At this time, the start point (frame) determined is, as illustrated in FIG. 21, the start point 2101 of the bit prediction section 2110 having a time period that matches the insertion period BP of the pn bit determined previously is determined. do. In the example of FIG. 21, when the pn bit insertion period BP determined above corresponds to 25 frames, the interval start point (or frame corresponding thereto) of the bit prediction interval having a time interval corresponding to 25 frames is determined as a bit. Here is an example that determines the starting point for assigning values. As such, when the start point is determined, the bit extractor 1530 allocates a bit value for each insertion period BP previously determined from the start point. At this time, if there is a point passing the upper threshold value downward (from top to bottom) within the insertion period, '1' is assigned, and if it does not have such a point, '0' is assigned (S1638). Of course, according to the embodiment, since the watermark encoding may increase energy for '0', bit values may be allocated as opposed to the above. According to an embodiment of the present invention, when a reference frame group is inserted between pn bits, as shown in FIG. 22, when the corresponding bit value is determined for each bit insertion period, an upper limit threshold value in the insertion period is determined. A value of '1' is assigned only to a period 2210 i having all of the points passing the lower limit threshold, and '0' is allocated otherwise. In the example of FIG. 22, the second period 2220 has a point 2221 which passes the upper limit downward, but does not have a point that passes the lower limit (2222), and thus a value of '0' is assigned. In this manner, the bit extractor 1530 generates a bit sequence expected to be a watermark payload (S1638).

본 발명에 따른 다른 일 실시예에서는, 워터마크 페이로드가 시작되는 것으로 예상되는 지점을 도 21에 예시된 방법으로 결정하지 않고, 임의의 지점( 즉, 그 지점의 영상 프레임 )부터 한 프레임단위의 구간으로 이동하면서, 또는 매 비트 예상구간씩 이동하면서, 앞서와 같은 방식으로 각 비트 삽입주기마다 비트값을 할당하여 비트 시퀀스를 생성한 후, 이 후에 설명하는 상기 비트 시퀀스상에서의 pn 시퀀스 검출과정에 의해 최적의 결과가 나오게 되는 지점을 pn 시퀀스의 시작점으로 할 수도 있다.In another embodiment according to the present invention, the point at which the watermark payload is expected to start is not determined by the method illustrated in FIG. The bit sequence is generated by assigning a bit value to each bit insertion period in the same manner as described above while moving to the interval or every bit prediction interval, and then, during the pn sequence detection process on the bit sequence described later. It is also possible to use the starting point of the pn sequence as the point at which the optimal result is obtained.

상기 비트 추출기(1530)는 전술한 바와 같은 과정에 따라 워터마크 페이로드로 예상되는 비트열, 즉 비트 시퀀스를 생성한 후 그 비트 시퀀스의 전부 또는 일부의 정확성 및/또는 신뢰성을 검증한다. 이를 위해 pn 시퀀스의 비트값 특성( '1'의 개수는 '0'의 개수보다 1개 많음 )을 이용한다. 예를 들어, 주기가 31인 pn 시퀀스에서는 '1'이 16개, '0이 15개 존재한다. 따라서, 도 23에 예시된 바와 같이, 5비트 크기의 pn 생성기에서 출력되는 31비트 주기의 pn 시퀀스의 5개에 해당하는 비트 시퀀스라면 '1'이 80개, '0이 75개가 될 것이다. 따라서, 상기 비트 추출기(1530)는 앞서 설명한 방식으로 pn 비트 삽입주기에 비트값을 할당하여 생성한 비트 시퀀스의 전부 또는 일부가 상기의 특성을 만족하는 지를 확인한다(S1639). 이 때의 만족요건은 에러의 범위를 가질 수 있다. 예를 들어, 특성을 충족하는 0과 1의 개수차 조건을, 1개가 아닌 NL (NL=2,3,...)개로 설정할 수도 있다. 상기의 만족요건이 충족되지 않으면, 최초 설정하였던 상하한 문턱값을 조정하여 앞서 설명한 과정들( pn 비트 삽입주기 결정, 시작점 결정, 비트 시퀀스 생성 등 )을 다시 수행한다. 상기 비트 추출기(1530)가 비트 추출의 정확성 및/또는 신뢰성을 위해 검증하는 비트열의 크기는 미리 설정된 값일 수 있으며, 또는 상기 사용자 인터페이스(1550)를 통해 pn 시퀀스의 수로써 설정될 수도 있다. 0과 1의 개수차 특성이 정해진 조건을 만족하게 되면 상기 비트 추출기(1530)는 생성한 비트 시퀀스를 상기 워터마크 복호부(1540)에 인가한다. 상기 비트 추출기(1530)는 상기 비트 시퀀스를 출력한 후에도 그 비트 시퀀스를 얻게 된 모든 정보( 입력된 에너지 비율신호, 최종 설정하였던 상하한 문턱값 등 )를 저장해 둔다. 이는 후단의 워터마크 복호부(1540)에서, 원하는 상관성을 갖는 pn 시퀀스가 정해지지 않는 경우를 대비하기 위해서이다.The bit extractor 1530 generates a bit sequence, i.e., a bit sequence, expected to be a watermark payload according to the above-described process, and then verifies the accuracy and / or reliability of all or part of the bit sequence. To this end, the bit value characteristic of the pn sequence (the number of '1' is one more than the number of '0') is used. For example, in a pn sequence having a period of 31, there are 16 '1's and 15'0's. Thus, as illustrated in FIG. 23, if the bit sequence corresponds to five of the 31-bit period pn sequence output from the 5-bit pn generator, '1' will be 80 and '0 will be 75. Therefore, the bit extractor 1530 checks whether all or part of the bit sequence generated by allocating the bit value to the pn bit insertion period in the manner described above satisfies the above characteristics (S1639). The satisfaction requirement at this time may have a range of errors. For example, the aberration condition of 0 and 1 satisfying the characteristic may be set to N L (N L = 2,3, ...) instead of one. If the above satisfaction requirement is not satisfied, the above-described processes (pn bit insertion period determination, start point determination, bit sequence generation, etc.) are performed again by adjusting the upper and lower threshold values previously set. The size of the bit string that the bit extractor 1530 verifies for accuracy and / or reliability of bit extraction may be a preset value, or may be set as the number of pn sequences through the user interface 1550. When the aberration characteristic of 0 and 1 satisfies a predetermined condition, the bit extractor 1530 applies the generated bit sequence to the watermark decoder 1540. Even after outputting the bit sequence, the bit extractor 1530 stores all the information (the input energy ratio signal, the upper and lower threshold values, etc.) obtained from the bit sequence. This is for the case where the pn sequence having the desired correlation is not determined in the watermark decoding unit 1540 at the next stage.

본 발명에 따른 일 실시예에서는, 시간적 에러( loss 등 )의 발생에 취약한 pn 시퀀스의 특성을 보상하기 위해 도 6a 또는 6b에서와 같이 일정간격으로 파일럿 pn 시퀀스를 삽입하므로, 상기 워터마크 복호부(1540)는 입력되는 비트 시퀀스에 대해 파일럿 pn 시퀀스의 부분 및 워터마크 데이터 구간을 찾는 과정(S1640)을 수행한다. 워터마킹에 파일럿 pn 시퀀스가 삽입되지 않는 도 5의 실시예에 따라 워터마킹된 경우에는, 파일럿 pn 시퀀스를 찾는 과정은 생략하고, 워터마크 데이터가 인코딩된 pn 시퀀스( 이하, "데이터 pn 시퀀스"라 칭한다. )를 찾아서 워터마크 데이터를 디코딩하는 과정(S1650)을 바로 수행하게 된다. 입력되는 비트 시퀀스상에서 파일럿 pn 시퀀스의 부분을 찾기 위해, 상기 워터마크 복호부(1540)는 상기 입력된 비트 시퀀스상에서 한 비트씩 이동하면서 상기 PN 공급부(1541)에서 제공된 파일럿 pn 시퀀스를 적용하여 자기 상관성 값이, 도 4에서와 같이 가장 높게( 이론적으로 pn 시퀀스의 주기에 해당하는 값 ) 나타나는 비트군을 찾는다(S1642). 이 때 찾아진 비트군은, 물론 파일럿 pn 시퀀스와 동일한 비트값들로 추정되는 비트열을 갖는다. 도 5의 실시예에 따라 워터마킹된 경우에는, 파일럿 pn 시퀀스대신 워터마크 데이터의 인코딩시 사용하기로 약속되어진 데이터 pn 시퀀스를 하나 또는 복수개 사용하게 된다. 인코딩시에 양자화된 이동량을 사용하여 위상 이동시키는 실시예의 경우에는 각 사용되는 데이터 pn 시퀀스를 기 정해진 위상단위로 이동시키면서 입력된 비트 시퀀스상에서의 상관성 값을 검출하여 자기 상관성의 값이 도출되는 데이터 pn 시퀀스 및 그 위상을 도출하게 된다. 한편, 상기 워터마크 복호부(1540)가 사용되는 pn 시퀀스는 상기 PN 공급부(1541)에서 제공된다.In one embodiment according to the present invention, since the pilot pn sequence is inserted at regular intervals as in FIG. 6a or 6b to compensate for the characteristics of the pn sequence vulnerable to the occurrence of a temporal error (loss, etc.), the watermark decoder ( In operation 1540, a portion of the pilot pn sequence and a watermark data section are searched for the input bit sequence. In the case of watermarking according to the embodiment of FIG. 5 in which the pilot pn sequence is not inserted into the watermarking, the process of finding the pilot pn sequence is omitted, and a pn sequence in which the watermark data is encoded (hereinafter referred to as a "data pn sequence"). In step S1650, the watermark data is decoded and the watermark data is decoded. In order to find a part of the pilot pn sequence on the input bit sequence, the watermark decoder 1540 applies the pilot pn sequence provided by the PN supply unit 1541 while moving one bit on the input bit sequence to autocorrelate. As shown in FIG. 4, the group of bits in which the value appears the highest (in theory, the value corresponding to the period of the pn sequence) is found (S1642). The bit group found at this time has, of course, a bit string estimated at the same bit values as the pilot pn sequence. In the case of watermarking according to the embodiment of FIG. 5, one or more data pn sequences promised for use in encoding watermark data are used instead of the pilot pn sequence. In the embodiment of shifting the phase by using the quantized shift amount at the time of encoding, the data pn from which the autocorrelation value is derived by detecting the correlation value on the input bit sequence while shifting each used data pn sequence in a predetermined phase unit The sequence and its phase are derived. Meanwhile, the pn sequence in which the watermark decoding unit 1540 is used is provided by the PN supply unit 1541.

한편, 상기 워터마크 복호부(1540)는, 파일럿 pn 시퀀스를 검출하기 위해, 상기 비트 추출기(1530)로부터 입력된 비트 시퀀스상에서 최소한 적어도 하나의 파일럿 pn 시퀀스가 존재하는 대상구간을 설정하여 위 상관성 값 검출과정을 수행한다. 이를 위해서, 상기 워터마크 복호부(1540)는 대상구간의 비트크기가, 도 24에서 보는 바와 같이, WN ( =(pn 시퀀스 주기의 비트 수)*(워터마크 데이터의 인코딩에 이용된 pn 시퀀스들의 수) ) 이상이 되도록 설정하며, 또한, 상기 비트 추출기(1530)도 최소한 상기 WN 비트 이상의 크기를 갖는 비트 시퀀스를 추출하여 상기 워터마크 복호부(1540)에 인가한다. 경우에 따라서는, 상기 WN 크기의 구간내에서도 파일럿 pn 시퀀스가 검출되지 않을 수도 있다. 이는, 파일럿 pn 시퀀스가 설정된 WN 비트크기의 대상구간의 경계영역에 걸쳐 있음으로 해서 발생할 수도 있다. 따라서, 상기 워터마크 복호부(1540)는 최초 설정된 WN 비트크기의 대상구간(2401)내에서 자기상관성에 해당하는 값을 갖는 비트군이 검출되지 않으면 대상구간의 절반 지점(2410)부터 시작하여 새로운 대상구간(2411)를 설정한 후 파일럿 pn 시퀀스를 찾는다. 이를 위해, 상기 비트 추출기(1530)는 입력된 에너지 비율 신호로부터 최소한 1.5*WN ( 바람직하게는 2*WN ) 비트수의 비트 시퀀스를 추출하여 상기 워터마크 복호부(1540)에 인가하고, 상기 워터마크 복호부(1540)는 그 입력된 비트 시퀀스, 즉 pn 시퀀스 비트열에 대해 전술한 과정을 수행한다.Meanwhile, in order to detect a pilot pn sequence, the watermark decoder 1540 sets a target interval in which at least one pilot pn sequence exists on a bit sequence input from the bit extractor 1530 to set the correlation value. Perform the detection process. To this end, the watermark decoding unit 1540 has a bit size of the target section, as shown in FIG. 24, WN (= (number of bits in a pn sequence period) * (pN sequences used for encoding watermark data). Number)), and the bit extractor 1530 also extracts a bit sequence having a size of at least the WN bit and applies it to the watermark decoder 1540. In some cases, the pilot pn sequence may not be detected even within the WN size section. This may occur because the pilot pn sequence spans the boundary region of the target section of the set WN bit size. Accordingly, if the bit group having a value corresponding to autocorrelation is not detected in the target period 2401 of the initially set WN bit size, the watermark decoder 1540 starts with a half point 2410 of the target period. After setting the target section 2411, the pilot pn sequence is found. To this end, the bit extractor 1530 extracts a bit sequence of at least 1.5 * WN (preferably 2 * WN) bits from the input energy ratio signal and applies the bit sequence to the watermark decoder 1540. The mark decoder 1540 performs the above-described process on the input bit sequence, that is, the pn sequence bit string.

본 발명에 따른 일 실시예에서는, 만약, 상기의 과정을 수행했음에도 소정값(pVauto)이상의 상관성 값이 되는 비트군이 입력된 비트 시퀀스상에서 검출되지 않으면(S1644) feedback 과정(S1645)을 수행한다. 이 때는, 상기 워터마크 복호부(1540)가 pn 시퀀스 검출 실패를 상기 비트 추출기(1530)에 알리게 되고, 이에 따라, 상기 비트 추출기(1530)는 앞서 저장하였던 에너지 비율 신호에 대해 상하한 문턱값 조정, 비트추출을 위한 신호 구간 조정 등을 통해 비트 시퀀스를 재추출하는 과정을 다시 수행하게 된다.According to an embodiment of the present invention, if the bit group that becomes a correlation value of more than a predetermined value (pV auto ) is not detected on the input bit sequence even though the above process is performed (S1644), the feedback process (S1645) is performed. . At this time, the watermark decoder 1540 notifies the bit extractor 1530 of the pn sequence detection failure, and accordingly, the bit extractor 1530 adjusts the upper and lower thresholds for the energy ratio signal previously stored. Then, the process of re-extracting the bit sequence is performed again by adjusting the signal interval for bit extraction.

본 발명에 따른 일 실시예에서는, 전술한 과정을 통해 파일럿 pn 시퀀스에 해당하는 비트군이 복수개 검출되면, 상기 워터마크 복호부(1540)는 입력된 비트 시퀀스상에서의 검출된 파일럿 pn 시퀀스간의 거리를 검사하여 워터마크 디코딩을 위해 사용할, 데이터 pn 시퀀스에 해당하는 pn 시퀀스 비트구간을 결정한다(S1646). 파일럿 pn 시퀀스간의 거리를 검증하는 이유는 영상신호에 실린 워터마크 데이터에 시간적 에러가 발생했었는 지를 확인하기 위해서이다. 시간적 에러가 발생한 경우에는, 에러가 있는 pn 시퀀스로부터 잘못된 워터마크 정보를 검출할 수도 있는 데 이러한 오류를 본 검증을 통해 회피할 수 있다. 도 25의 예에서와 같이, 파일럿 pn 시퀀스간에 T0 초의 시간격이 유지되도록 파일럿 pn 시퀀스가 삽입되었다면, 상기 워터마크 복호부(1540)는 검출된 파일럿 pn 시퀀스간의 시간격이, 허용오차 범위내에 있는 T0 초인지를 확인한다. 확인된 파일럿 pn 시퀀스간의 시간격이 허용오차범위 내의 T0 이면, 해당 시구간내의 하나 또는 그 이상의 데이터 pn 시퀀스(2510k)는 에러없는 pn 시퀀스로 확인하여, 워터마크 데이터를 디코딩하기 위한 pn 시퀀스 구간으로서 사용하게 되고, 그렇지 않으면 시간적 에러가 발생했다고 보고 해당 시구간(2520)내의 하나 또는 그 이상의 데이터 pn 시퀀스는 워터마크 데이터의 디코딩을 위해 사용하지 않는다. 본 발명에 따른 일 실시예에서는, 시간적 에러가 발생했다고 판단되는 상기 시구간(2520)내의 비트열에 대해서도, 검출된 파일럿 pn 시퀀스의 직후 및/또는 직전의 pn 시퀀스 주기에 해당하는 또는 워터마크 페이로드의 길이에 해당하는 각 비트단(團)(2521,2522)에 대해서는 워터마크 데이터의 디코딩을 위해 사용할 수도 있다. 본 발명에 따른 또 다른 실시예에서는, 다음 파일럿 pn 시퀀스까지의 시간격이 To 보다 긴 경우, 그 다음 파일럿 pn 시퀀스까지의 시간격을 확인하고 그 시간격이 적절한 시간격인 경우( 예를 들어, 허용오차범위 내의 To의 정수배에 해당하는 시간격 )에는 시간격이 To보다 긴 해당 구간내의 페이로드 데이터의 비트단에 대해서는 워터마크 데이터의 디코딩을 위해 사용한다. 도 25에 예시된 그림은, 파일럿 pn 시퀀스 전후의 비트열에 대해 하나 또는 그 이상의 데이터 pn 시퀀스에 대한 상관성 검출을 수행하는 것을 예시하기 위해, 서로 다른 파일럿 pn 시퀀스의 직후와 직전에 동일 비트단이 중복되어(2530) 도시되어 있는 것일 뿐 그 비트단이 검출에 중복되어 사용되는 것을 예시하는 것은 아니다.In one embodiment according to the present invention, when a plurality of bit groups corresponding to the pilot pn sequence are detected through the above-described process, the watermark decoder 1540 determines the distance between the detected pilot pn sequences on the input bit sequence. In operation S1646, a pn sequence bit section corresponding to the data pn sequence to be used for watermark decoding is determined. The reason for verifying the distance between pilot pn sequences is to confirm whether a temporal error has occurred in the watermark data carried in the video signal. In the case of a temporal error, wrong watermark information may be detected from the erroneous pn sequence, and this error can be avoided through this verification. As in the example of FIG. 25, if a pilot pn sequence is inserted such that a time interval of 0 seconds is maintained between pilot pn sequences, the watermark decoder 1540 determines that a time interval between detected pilot pn sequences is within an tolerance range. Make sure that T is 0 seconds. If the time interval between the identified pilot pn sequences is T 0 within the tolerance range, one or more data pn sequences 2510 k in the corresponding time interval are identified as an error-free pn sequence, and a pn sequence for decoding watermark data. If not, one or more data pn sequences in the time interval 2520 are not used for decoding the watermark data. In one embodiment according to the present invention, a watermark payload corresponding to a pn sequence period immediately after and / or immediately before a detected pilot pn sequence, even for a bit string in the time interval 2520 that is determined to have occurred a temporal error. Each bit stage 2521 and 2522 corresponding to the length of may be used for decoding watermark data. In another embodiment according to the present invention, when the time interval until the next pilot pn sequence is longer than T o , the time interval until the next pilot pn sequence is checked and the time interval is an appropriate time interval (for example, A time interval corresponding to an integer multiple of T o in the tolerance range) is used for decoding the watermark data for the bit end of payload data in the corresponding interval having a time interval longer than T o . The figure illustrated in FIG. 25 overlaps the same bit stages immediately after and immediately before different pilot pn sequences to illustrate performing correlation detection on one or more data pn sequences for the bit strings before and after the pilot pn sequence. It is merely illustrated (2530) and does not exemplify that the bit stages are used in duplicate for detection.

전술한 바와 같이, 워터마크 데이터의 디코딩을 위해 사용할 데이터 pn 시퀀스가 있을 것으로 추정되는 pn 시퀀스 구간( 이하, "데이터 대상구간"이라 칭한다. )이 정해지면, 상기 워터마크 복호부(1540)는 해당 데이터 대상구간에 대해 그 선두부터 시작하여 다음에 상세히 설명하는 워터마크 데이터의 검출과정(S1650)을 수행한다. 상기 워터마크 복호부(1540)는, 앞서 언급한 바와 같이, 상기 PN 공급부(1541)에서 제공되는, 기 약속된 하나의 pn 시퀀스 또는 pn 시퀀스들 중 순차적으로 선택되는 하나의 pn 시퀀스를 사용하여, 상기 데이터 대상구간의 선두비트부터 pn 시퀀스 주기에 해당하는 비트까지의 첫번째 비트집합에 대해 상관성 값을 검출한다. 이 검출과정은, 임의의 한 pn 시퀀스 및/또는 임의의 양자화된 위상 이동량에 대해 자기 상관성에 상응하는 기 설정된 허용범위내의 피크값이 나올 때까지, pn 시퀀스를 바꿔가면서 또한 해당 pn 시퀀스의 위상을 이동시켜가면서 진행된다. 위상 이동량을 양자화시키지 않는 실시예에 대해서는 물론, pn 시퀀스의 위상 이동량을 연속적으로, 즉 1비트씩 변화시키면서 상관성 값을 검출한다. 자기 상관성에 준하는 피크값이 검출되면 그 때 사용한 pn 시퀀스의 위상 이동량으로부터 인코딩된 값을 결정하고 그 값을 갖는 워터마크 비트군을 결정한다( 도 7의 721의 역과정 ). 즉, 그 위상 이동량에 대해 기 대응되어 있는 값을 갖는 워터마크 비트군을 결정한다. 물론, 도 7에 예시된 실시예에서와 같이 복수의 pn 시퀀스로써 워터마킹을 한 경우에는, 자기 상관성에 해당하는 피크값이 검출되었을 때, 사용하였던 pn 시퀀스에 대해서도 그 pn 시퀀스에 대해 할당하기로 정해져 있는 값을 디코딩 값으로 결정하고 그 값을 갖는 워터마크 비트군을 결정한다( 도 7의 711의 역과정 ). 만약, 사용하기로 정해져 있는 모든 데이터 pn 시퀀스에 대해서 자기 상관성에 해당하는 값이 검출되는 pn 시퀀스가 없으면, 상기 워터마크 복호부(1540)는, 각 데이터 pn 시퀀스에 대해, 양자화된 위상 이동량을 무시하고 1비트씩 위상 이동을 수행하면서 자기 상관성에 해당하는 피크값이 검출되는 지를 확인한다. 피크값이 검출되면, 그 때의 위상 이동량에 가장 근접하는 양자화된 위상 이동량을 찾아서 그 양자화된 위상 이동량에 대응되는 값을 디코딩 값으로 결정한다. 본 발명에 따른 일 실시예에서는, 자기 상관성에 해당하는 피크값을 나타내는 위상 이동된 pn 시퀀스가 검출되지 않으면, 상기 첫번째 비트집합에 대해서는 모든 상관성 검출값에 대해서 가장 최대치를 나타낸 위상 이동된 pn 시퀀스가 대응되는 것으로 결정하여, 위상 및/또는 pn 시퀀스에 대한 디코딩 값을 결정할 수도 있다.As described above, when a pn sequence interval (hereinafter, referred to as a "data target interval") in which there is a data pn sequence to be used for decoding watermark data is determined, the watermark decoder 1540 may determine the corresponding data pn sequence. The watermark data detection process (S1650) will be described below in detail for the data target section starting from the beginning. As mentioned above, the watermark decoder 1540 uses one pn sequence or one pn sequence sequentially selected from the pn sequences provided by the PN supply unit 1541. A correlation value is detected for the first bit set from the first bit of the data target section to the bit corresponding to the pn sequence period. This detection process changes the phase of the pn sequence while changing the pn sequence until a peak value within a predetermined tolerance corresponding to autocorrelation is obtained for any one pn sequence and / or any quantized phase shift. It proceeds by moving. As for the embodiment which does not quantize the phase shift amount, the correlation value is detected while changing the phase shift amount of the pn sequence continuously, that is, by 1 bit. When a peak value corresponding to autocorrelation is detected, an encoded value is determined from the phase shift amount of the pn sequence used at that time, and a watermark bit group having the value is determined (inverse process of 721 of FIG. 7). That is, a watermark bit group having a value corresponding to the phase shift amount is determined. Of course, when watermarking with a plurality of pn sequences as in the embodiment illustrated in FIG. 7, when a peak value corresponding to autocorrelation is detected, the pn sequence used is allocated to the pn sequence. A predetermined value is determined as a decoding value and a watermark bit group having the value is determined (inverse process of 711 of FIG. 7). If there is no pn sequence for which a value corresponding to autocorrelation is detected for all data pn sequences determined to be used, the watermark decoder 1540 ignores the quantized phase shift amount for each data pn sequence. Then, perform a phase shift by 1 bit and check whether a peak value corresponding to autocorrelation is detected. When the peak value is detected, the quantized phase shift amount closest to the phase shift amount at that time is found, and a value corresponding to the quantized phase shift amount is determined as the decoding value. In one embodiment according to the present invention, if the phase shifted pn sequence representing the peak value corresponding to autocorrelation is not detected, the phase shifted pn sequence representing the maximum value for all correlation detection values for the first bit set is obtained. Determined to correspond, the decoding values for the phase and / or pn sequences may be determined.

상기와 같은 과정을 상기 데이터 대상구간에 대해서 pn 시퀀스 주기단위로 수행함으로써 복수의 워터마크 비트군을 결정함으로써 이 들 비트군들로 이루어진 워터마크 데이터를 복원한다. 물론, 도 6b의 실시예에서와 같이 매 데이터 pn 시퀀스마다 파일럿 pn 시퀀스가 부가되어 있는 경우에는, 다음에 이어지는 하나이상의 데이터 대상구간에 대해서도 상기 설명한 과정을 수행함으로써 워터마크를 구성하는 데이터를 최종적으로 복원하게 된다.The above process is performed in the pn sequence period unit for the data target section to determine a plurality of watermark bit groups, thereby restoring watermark data consisting of these bit groups. Of course, when the pilot pn sequence is added to every data pn sequence as in the embodiment of FIG. 6b, the data constituting the watermark is finally performed by performing the above-described process for the next one or more data target sections. Will be restored.

본 발명에 따른 다른 일 실시예에서는, 전술한 바의 파일럿 pn 시퀀스의 검출 후에 그 검출된 파일럿 pn 시퀀스간에 있는 구간에 대한 비트열을, 에너지 비율신호로부터 다시 추출하여 데이터 pn 시퀀스의 비트열을 얻는다. 이를 위해, 상기 워터마크 복호부(1540)는 검출된 파일럿 pn 시퀀스에 해당하는 구간을 상기 비트 추출기(1530)에 통지하고 그 구간의 전으로 또는 후로 하나 또는 그 이상의 pn 시퀀스들에 대응되는 비트열을 재추출하도록 요청한다. 이에 따라, 상기 비트 추출기(1530)는, 앞서 파일럿 pn 시퀀스의 도출과정(S1632,S2634,S1636,S1638,S1639)과 동일한 과정을, 앞서 저장되어 있던 에너지 비율신호에 대해 적용하여 데이터 pn 시퀀스에 해당하는 비트열을 추출한다. 이 때는, 앞서 파일럿 pn 시퀀스가 검출되었던 상하한 문턱값을 초기값으로 하여 비트특성을 적절히 만족하는 비트열이 검출될 때까지 상하한 문턱값을 조정하게 된다. 데이터 pn 시퀀스의 비트열을 추출하기 위한 구간이 초기보다는 축소되었기 때문에 좀더 정밀한 조건을 적용함으로써 보다 정확히 데이터 pn 시퀀스에 해당하는 비트열을 추출할 수가 있게 된다. 상기 비트 추출기(1530)로부터, 데이터 pn 시퀀스에 해당하는 비트열이 추출되어 수신되면, 상기 워터마크 복호부(1540)는, 해당 비트열을 앞서 검출되었던 파일럿 pn 시퀀스의 구간 전 및/또는 후에 적절히 삽입하여 데이터 대상구간을 결정하고 그 대상구간에 대해 전술한 워터마크 데이터의 검출과정(S1650)을 수행함으로써, 인코딩되어 있는 워터마크 데이터를 디코딩하게 된다.In another embodiment according to the present invention, after detecting the pilot pn sequence as described above, the bit string for the interval between the detected pilot pn sequences is again extracted from the energy ratio signal to obtain the bit string of the data pn sequence. . To this end, the watermark decoder 1540 notifies the bit extractor 1530 of a section corresponding to the detected pilot pn sequence and a bit string corresponding to one or more pn sequences before or after the section. Ask to reextract. Accordingly, the bit extractor 1530 corresponds to the data pn sequence by applying the same process as the derivation process S1632, S2634, S1636, S1638, and S1639 to the previously stored energy ratio signal. Extract the bit string. At this time, the upper and lower threshold values are adjusted until the upper and lower threshold values for which the pilot pn sequence has been detected as an initial value are detected until a bit string that satisfies the bit characteristics is detected. Since the interval for extracting the bit string of the data pn sequence is shorter than the initial stage, it is possible to extract a bit string corresponding to the data pn sequence more accurately by applying a more precise condition. When the bit string corresponding to the data pn sequence is extracted and received from the bit extractor 1530, the watermark decoder 1540 may appropriately before and / or after a period of the pilot pn sequence previously detected. By inserting and determining the data target section and performing the above-described detection process of the watermark data (S1650) for the target section, the encoded watermark data is decoded.

상기에서 설명한 워터마크 검출과정을 통해 복원된, 워터마크 페이로드에 해당하는 워터마크 데이터는 상기 제어부(1500)에 전달되고, 상기 제어부(1500)는 그 워터마크 데이터를 상기 사용자 인터페이스(1550)를 통해 출력함으로써 사용자 또는 운용자가 대상 컨텐트에 실려있는 워터마크를 알 수 있도록 한다.The watermark data corresponding to the watermark payload restored through the above described watermark detection process is transferred to the controller 1500, and the controller 1500 transmits the watermark data to the user interface 1550. This allows the user or operator to know the watermark on the target content.

지금까지 설명한 워터마크 데이터의 인코딩과 그 검출과정은, 앞서 실시예로서 설명한 영상신호외에 오디오, 또는 멀티미디어 컨텐트에도 모두 적용할 수가 있다. 오디오에 적용하는 경우에는, 시간적 기준으로 사용할 영상 프레임이 있는 영상신호에서와는 달리 시간적 기준을 위한 요소가 없을 수 있다. 이러한 경우, 오디오 신호에 본 발명의 원리를 적용하는 경우에는 워터마크 비트를 기 정해진 시간마다 삽입할 수 있다. 또한, 오디오 신호에 본 발명의 원리를 적용하는 경우에는 사람이 청취하기 어려운 특정 주파수 대역의 성분에 대해, 인코딩할 pn 시퀀스의 비트 값에 따라 그 에너지를 증가시키거나 또는 특정 세기로 삽입할 수도 있다.The encoding of the watermark data described above and the detection process thereof can be applied to both audio and multimedia contents in addition to the video signal described in the above embodiments. When applied to audio, there may be no element for a temporal reference unlike an image signal having an image frame to be used as a temporal reference. In such a case, when applying the principles of the present invention to an audio signal, watermark bits may be inserted at predetermined time intervals. In addition, when applying the principles of the present invention to an audio signal, the energy may be increased or inserted at a specific intensity according to the bit value of the pn sequence to be encoded, for a component of a specific frequency band that is difficult for humans to hear. .

이상, 전술한 본 발명의 실시예는, 예시의 목적을 위해 개시된 것으로, 당업자라면, 이하 첨부된 특허청구범위에 개시된 본 발명의 기술적 사상과 그 기술적 범위 내에서, 또 다른 다양한 실시예들을 개량, 변경, 대체 또는 부가 등이 가능할 것이다.
As described above, the embodiments of the present invention are disclosed for the purpose of illustration, and those skilled in the art can further improve various other embodiments within the spirit and technical scope of the present invention disclosed in the appended claims. Modifications, substitutions or additions may be made.

100: 제어부 110: 워터마킹부
120: PN 공급부 130: 사용자 인터페이스
140: 메모리부 1310: I픽처 엔트로피 디코더
1320: 워터마크 삽입부 1330: I픽처 엔트로피 인코더
1410: I 슬라이스 엔트로피 디코더 1420: 인트라 디코더
1430: 픽셀 가산기 1440: 워터마크 삽입부
1450: 역변환기 1460: 인트라 예측기
1470: 인트라 인코더 1480: I슬라이스 엔트로피 인코더
1500: 제어부 1501: 메모리부
1510: 에너지 검출부 1520: 신호 변환부
1530: 비트 추출부 1540: 워터마크 복호부
1541: PN 공급부 1550: 사용자 인터페이스
100: control unit 110: watermarking unit
120: PN supply unit 130: user interface
140: memory unit 1310: I picture entropy decoder
1320: watermark insertion unit 1330: I picture entropy encoder
1410: I slice entropy decoder 1420: intra decoder
1430: pixel adder 1440: watermark insertion unit
1450: Inverse Transformer 1460: Intra Predictor
1470: Intra Encoder 1480: I-Slice Entropy Encoder
1500: control unit 1501: memory unit
1510: energy detector 1520: signal converter
1530: bit extracting unit 1540: watermark decoding unit
1541: PN supply 1550: user interface

Claims (22)

컨텐트에 워터마크를 삽입하는 방법에 있어서,
상기 워터마크에 상응하는 데이터에 속하는 제 1비트군의 값에 따라 대역확산 부호의 위상 이동(shift)량을 결정하고 그 결정된 이동량만큼 상기 대역확산 부호를 위상이동시키는 단계와,
적어도 상기 위상 이동된 대역확산 부호를 포함하는 비트 시퀀스의 각 비트의 값에 따라, 컨텐트의 변환계수를 선택적으로 변화시키는 단계를 포함하여 이루어지는 방법.
In the method of embedding a watermark in the content,
Determining a phase shift amount of a spread spectrum code according to a value of a first bit group belonging to the data corresponding to the watermark, and phase shifting the spread spectrum code by the determined shift amount;
Selectively changing a conversion coefficient of the content according to the value of each bit of the bit sequence including at least the phase shifted spreading code.
제 1항에 있어서,
상기 데이터에 속하는 제 2비트군의 값에 따라, 다수의 대역확산 부호들 중에서 하나의 대역확산 부호를 선택하는 단계를 더 포함하여 이루어지되,
상기 위상이동시키는 단계는, 상기 선택된 대역확산 부호를 상기 제 1비트군의 값에 따라 위상을 이동시키는 것인 방법.
The method of claim 1,
The method may further include selecting one spreading code from among a plurality of spreading codes according to a value of a second group of bits belonging to the data.
And the phase shifting step shifts the selected spread spectrum code according to the value of the first bit group.
제 1항에 있어서,
상기 위상이동시키는 단계에서 결정되는 위상 이동량은, 제 1비트군의 값에 따라 k*2p (k=0,1,2,.., p=1,2,..)에서 선택되며, 상기 p값은 기 설정된 하나의 값이 고정 사용되는 것인 방법.
The method of claim 1,
The phase shift amount determined in the phase shifting step is selected from k * 2 p (k = 0,1,2, .., p = 1,2, ..) according to the value of the first bit group. The p value is a method in which one preset value is fixedly used.
제 1항에 있어서,
항상 고정된 위상을 갖는 동기 대역확산 부호를 상기 비트 시퀀스에 포함시키는 단계를 더 포함하여 이루어지는 것인 방법.
The method of claim 1,
And including in the bit sequence a sync spread spectrum code having always a fixed phase.
제 1항에 있어서,
상기 컨텐트의 변환계수를 선택적으로 변화시키는 단계는, 상기 컨텐트를 구성하는 영상 프레임 시퀀스에서, 공간적 압축만이 적용된 인트라(intra) 픽처에 대해서만 수행하는 것인 방법.
The method of claim 1,
Selectively changing the transform coefficient of the content is performed only on an intra picture to which only spatial compression is applied in a sequence of video frames constituting the content.
제 1항에 있어서,
상기 컨텐트의 변환계수를 선택적으로 변화시키는 단계는, 상기 컨텐트를 구성하는 영상 프레임 시퀀스를 프레임 군들로 구분하고 그 구분된 각 프레임 군에 대해 상기 각 비트를 대응시켜 해당 프레임 군의 변환계수를 선택적으로 변화시키는 것인 방법.
The method of claim 1,
In the step of selectively changing the conversion coefficient of the content, the video frame sequence constituting the content is divided into frame groups, and the conversion coefficient of the corresponding frame group is selectively selected by matching each bit with respect to each divided frame group. To change.
제 1항에 있어서,
상기 컨텐트의 변환계수를 선택적으로 변화시키는 단계는, 상기 컨텐트를 구성하는 영상 프레임 시퀀스를 프레임 군들로 구분하고 그 구분된 각 프레임 군을 하나씩 건너뛰면서 상기 각 비트를 대응시켜 해당 프레임 군의 변환계수를 선택적으로 변화시키는 것인 방법.
The method of claim 1,
In the step of selectively changing a conversion coefficient of the content, the video frame sequence constituting the content is divided into frame groups, and each of the divided frame groups is skipped one by one to correspond to the respective bits to obtain a conversion coefficient of the corresponding frame group. Selectively changing.
제 6항 또는 제 7항에 있어서,
상기 구분되는 프레임 군은 기 정해진 일정시간에 상응하는 것인 방법.
The method according to claim 6 or 7,
The divided frame group corresponds to a predetermined time.
제 1항에 있어서,
상기 컨텐트의 변환계수를 선택적으로 변화시키는 단계는, 상기 컨텐트에 속하는 영상 프레임의 각 변환계수 블록의 일부 영역에 대한 변환계수를 선택적으로 변화시키는 것인 방법.
The method of claim 1,
And selectively changing a transform coefficient of the content, selectively changing a transform coefficient for a partial region of each transform coefficient block of an image frame belonging to the content.
컨텐트에 워터마크를 삽입하는 장치에 있어서,
대역확산 부호를 제공하도록 구성된 부호 공급부와,
상기 워터마크에 상응하는 데이터에 속하는 제 1비트군의 값에 따라, 상기 부호 공급부에서 제공되는 대역확산 부호의 위상 이동(shift)량을 결정하여 그 결정된 이동량만큼 상기 대역확산 부호를 위상이동시키고, 적어도 상기 위상 이동된 대역확산 부호를 포함하는 비트 시퀀스의 각 비트의 값에 따라, 컨텐트의 변환계수를 선택적으로 변화시키도록 구성된 워터마크 부호화부를 포함하여 구성되는 장치.
An apparatus for embedding a watermark in content, the apparatus comprising:
A code supply configured to provide a spread spectrum code,
Determining a phase shift amount of a spread spectrum code provided by the code supply unit according to a value of a first bit group belonging to the data corresponding to the watermark, and phase shifting the spread spectrum code by the determined shift amount, And a watermark encoder configured to selectively change a transform coefficient of the content according to the value of each bit of the bit sequence including at least the phase shifted spread spectrum code.
제 10항에 있어서,
상기 워터마크 부호화부는, 상기 상기 데이터에 속하는 제 2비트군의 값에 따라, 다수의 대역확산 부호들 중에서 하나의 대역확산 부호를 선택하는 과정을 더 수행하도록 구성되되, 상기 위상이동시에는, 상기 선택된 대역확산 부호를 상기 제 1비트군의 값에 따라 위상을 이동시키는 것인 장치.
The method of claim 10,
The watermark encoder is further configured to perform a process of selecting one spread spectrum code from among a plurality of spread spectrum codes according to a value of a second group of bits belonging to the data. And shift the phase of the selected spread spectrum code according to the value of the first group of bits.
제 10항에 있어서,
상기 워터마크 부호화부에서 위상이동시키는 이동량은, 상기 제 1비트군의 값에 따라 k*2p (k=0,1,2,.., p=1,2,..)에서 선택되며, 상기 p값은 기 설정된 하나의 값이 고정 사용되는 것인 장치.
The method of claim 10,
The amount of shifting the phase shifted by the watermark encoder is selected from k * 2 p (k = 0,1,2, .., p = 1,2, ..) according to the value of the first bit group. The p value is a device in which one preset value is fixedly used.
제 10항에 있어서,
상기 워터마크 부호화부는, 상기 부호 공급부에서 제공되는 항상 고정된 위상을 갖는 동기 대역확산 부호를 상기 비트 시퀀스에 포함시키는 과정을 더 수행하도록 구성된 것인 장치.
The method of claim 10,
And the watermark encoder is further configured to include, in the bit sequence, a synchronization spread spectrum code having a fixed phase always provided by the code supply unit.
제 10항에 있어서,
상기 워터마크 부호화부는, 상기 컨텐트의 변환계수를 선택적으로 변화시킬 때에, 상기 컨텐트를 구성하는 영상 프레임 시퀀스에서, 공간적 압축만이 적용된 인트라(intra) 픽처에 대해서만 수행하도록 구성된 것인 장치.
The method of claim 10,
And the watermark encoder is configured to perform only on an intra picture to which only spatial compression is applied in a video frame sequence constituting the content when the transform coefficient of the content is selectively changed.
제 10항에 있어서,
상기 워터마크 부호화부는, 상기 컨텐트의 변환계수를 선택적으로 변화시킬 때에, 상기 컨텐트를 구성하는 영상 프레임 시퀀스를 프레임 군들로 구분하고 그 구분된 각 프레임 군에 대해 상기 각 비트를 대응시켜 해당 프레임 군의 변환계수를 선택적으로 변화시키도록 구성된 것인 장치.
The method of claim 10,
When the watermark encoder selectively changes the conversion coefficient of the content, the watermark encoder divides the video frame sequence constituting the content into frame groups, and associates each bit with each of the divided frame groups to determine the corresponding frame group. And to selectively change the conversion coefficient.
제 10항에 있어서,
상기 워터마크 부호화부는, 상기 컨텐트의 변환계수를 선택적으로 변화시킬 때에, 상기 컨텐트를 구성하는 영상 프레임 시퀀스를 프레임 군들로 구분하고 그 구분된 각 프레임 군을 하나씩 건너뛰면서 상기 각 비트를 대응시켜 해당 프레임 군의 변환계수를 선택적으로 변화시키도록 구성된 것인 장치.
The method of claim 10,
When the watermark encoder selectively changes the conversion coefficient of the content, the watermark encoder divides the video frame sequence constituting the content into frame groups, and skips each of the divided frame groups one by one to correspond to the respective bits. And selectively change the coefficient of transformation of the group.
제 15항 또는 제 16항에 있어서,
상기 구분되는 프레임 군은 기 정해진 일정시간에 상응하는 것인 장치.
The method according to claim 15 or 16,
The divided frame group corresponds to a predetermined time.
제 10항에 있어서,
상기 워터마크 부호화부는, 상기 컨텐트의 변환계수를 선택적으로 변화시킬 때에, 상기 컨텐트에 속하는 영상 프레임의 각 주파수 계수 블록의 일부 영역에 대한 변환계수를 선택적으로 변화시키도록 구성된 것인 장치.
The method of claim 10,
And the watermark encoder is configured to selectively change a transform coefficient for a partial region of each frequency coefficient block of an image frame belonging to the content when selectively changing the transform coefficient of the content.
제 10항에 있어서,
상기 부호 공급부와 상기 워터마크 부호화부를 포함하는 기기(device)는, 스크램블된 디지털 압축 영상 데이터를 디스크램블링하여 디지털 압축 영상 데이터로 출력하는 디스크램블러와, 상기 디지털 압축 영상 데이터를 디코딩하여 영상신호로 출력하는 디코더간에 설치되어, 상기 디스크램블된 디지털 압축 영상 데이터를 수신하여 그 디지털 압축 영상 데이터의 변환계수를 선택적으로 변화시킨 후 상기 디코더에 인가하는 것인 장치.
The method of claim 10,
A device including the code supply unit and the watermark encoder may include a descrambler that descrambles scrambled digital compressed image data and outputs the digital compressed image data, and decodes the digital compressed image data as an image signal. And between the decoders to receive the descrambled digital compressed image data, selectively change the conversion coefficient of the digital compressed image data, and apply the decoded digital compressed image data to the decoder.
제 19항에 있어서,
상기 워터마크 부호화부는,
상기 수신된 디지털 압축 영상 데이터에 대해 엔트로피 디코딩을 수행하여 I 픽처 또는 I 슬라이스만을 추출하고 그 추출된 I 픽처 또는 I 슬라이스에 대한 변환계수를 선택적으로 변화시킨 후 엔트로피 인코딩을 수행하여 상기 디코더에 인가하는 것인 장치.
The method of claim 19,
The watermark encoder,
Entropy decoding is performed on the received digital compressed image data to extract only I pictures or I slices, and selectively transform transform coefficients of the extracted I pictures or I slices, and then apply entropy encoding to the decoder. Device.
제 19항에 있어서,
상기 워터마크 부호화부는,
상기 수신된 디지털 압축 영상 데이터에 대해 엔트로피 디코딩을 수행하여 I 픽처 또는 I 슬라이스만을 추출하고,
상기 추출된 I 픽처 또는 I 슬라이스에 대해, 인트라 예측(intra prediction)에 따른 디코딩을 수행하여 화소값의 픽처 또는 슬라이스로 복원하고,
상기 복원된 화소값을 갖는 픽처 또는 슬라이스에 대해 주파수성분을 나타내는 변환계수를 갖는 픽처 또는 슬라이스로 변환한 후 그 변환에 의해 얻어진 변환계수를 선택적으로 변화시키고,
상기 변환계수가 선택적으로 변화된 픽처 또는 슬라이스에 대해 엔트로피 인코딩을 수행하여 상기 디코더에 인가하는 것인 장치.
The method of claim 19,
The watermark encoder,
Entropy decoding is performed on the received digital compressed image data to extract only I pictures or I slices,
Decoding the extracted I picture or I slice, and performing decoding according to intra prediction to reconstruct a picture or slice of a pixel value,
Converting a picture or slice having a transform coefficient representing a frequency component with respect to the picture or slice having the reconstructed pixel value and then selectively changing the transform coefficient obtained by the conversion;
And performing entropy encoding on a picture or slice in which the transform coefficient is selectively changed and applying the entropy encoding to the decoder.
제 10항에 있어서,
상기 워터마크 부호화부의 동작을 제어하는 제어부를 더 포함하여 구성되되,
상기 제어부는, 대역확산 부호에 대한 양자화된 이동량, 사용하는 대역확산 부호의 수, 대역확산 부호의 주기, 대역확산 부호의 동기화를 위해 사용하는 동기 대역확산 부호의 삽입빈도, 대역확산 부호의 1비트를 컨텐트에 대응시키는 연속모드의 여부, 그리고 대역확산 부호의 1비트에 대응시키는 컨텐트의 시간격 중에서 적어도 하나에 대한 설정치를 입력받고 그 설정치에 따른 동작이 수행되도록 상기 워터마크 부호화부를 제어하도록 구성된 것인 장치.
The method of claim 10,
It further comprises a control unit for controlling the operation of the watermark encoder,
The control unit may include a quantized shift amount for a spread spectrum code, the number of spread spectrum codes used, a cycle of spread spectrum codes, an insertion frequency of a sync spread spectrum code used for synchronization of spread spectrum codes, and one bit of spread spectrum code. Is configured to control the watermark encoder to receive a setting value for at least one of a continuous mode corresponding to the content and a time interval of the content corresponding to 1 bit of the spread spectrum code, and to perform an operation according to the setting value. Device.
KR1020100022472A 2009-10-29 2010-03-12 Method and apparatus for embedding and detecting watermark into/from contents KR101613946B1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US13/504,885 US8908905B2 (en) 2009-10-29 2010-10-27 Device and method for embedding watermarks in contents and for detecting embedded watermarks
PCT/KR2010/007425 WO2011052992A2 (en) 2009-10-29 2010-10-27 Device and method for inserting watermarks in contents and for detecting inserted watermarks
EP10827076.0A EP2495965B1 (en) 2009-10-29 2010-10-27 Device and method for detecting inserted watermarks
CN201080049595.XA CN102598656B (en) 2009-10-29 2010-10-27 Device and method for inserting watermarks in contents and for detecting inserted watermarks

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US25585609P 2009-10-29 2009-10-29
US61/255,856 2009-10-29
US26175709P 2009-11-17 2009-11-17
US61/261,757 2009-11-17

Publications (2)

Publication Number Publication Date
KR20110047106A true KR20110047106A (en) 2011-05-06
KR101613946B1 KR101613946B1 (en) 2016-04-29

Family

ID=44238436

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020100022471A KR101613945B1 (en) 2009-10-29 2010-03-12 Method and apparatus for embedding and detecting watermark into/from contents
KR1020100022472A KR101613946B1 (en) 2009-10-29 2010-03-12 Method and apparatus for embedding and detecting watermark into/from contents

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020100022471A KR101613945B1 (en) 2009-10-29 2010-03-12 Method and apparatus for embedding and detecting watermark into/from contents

Country Status (1)

Country Link
KR (2) KR101613945B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013141489A1 (en) * 2012-03-22 2013-09-26 Samsung Electronics Co., Ltd. Method and apparatus for embedding and detecting watermark
KR20190133363A (en) * 2018-05-23 2019-12-03 세종대학교산학협력단 Method and apparatus for verifying integrity of image based on watermark

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11272225B2 (en) 2019-12-13 2022-03-08 The Nielsen Company (Us), Llc Watermarking with phase shifting

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007102403A1 (en) * 2006-03-07 2007-09-13 Nippon Telegraph And Telephone Corporation Electronic watermark embedding method, device, and program, and electronic watermark detecting method, device, and program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007102403A1 (en) * 2006-03-07 2007-09-13 Nippon Telegraph And Telephone Corporation Electronic watermark embedding method, device, and program, and electronic watermark detecting method, device, and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013141489A1 (en) * 2012-03-22 2013-09-26 Samsung Electronics Co., Ltd. Method and apparatus for embedding and detecting watermark
KR20190133363A (en) * 2018-05-23 2019-12-03 세종대학교산학협력단 Method and apparatus for verifying integrity of image based on watermark

Also Published As

Publication number Publication date
KR101613945B1 (en) 2016-04-20
KR101613946B1 (en) 2016-04-29
KR20110047105A (en) 2011-05-06

Similar Documents

Publication Publication Date Title
WO2011052992A2 (en) Device and method for inserting watermarks in contents and for detecting inserted watermarks
US5809139A (en) Watermarking method and apparatus for compressed digital video
Hartung et al. Watermarking of MPEG-2 encoded video without decoding and reencoding
JP5175908B2 (en) Information processing apparatus and program
JP4617049B2 (en) Method and apparatus for embedding data in an encoded digital bitstream
JP4127636B2 (en) Digital watermark embedding apparatus and method
US9288057B2 (en) Content segmentation of watermarking
EP2162860A1 (en) Modifying a coded bitstream
CN101389009B (en) Watermark information embedding, detection method and device
JP2004032792A (en) Image decoding method and decoder
US20070064937A1 (en) Method and apparatus for encoding or decoding a bitstream
CN105100959A (en) Evidence-obtaining marking method and device and digital home theater
KR100873947B1 (en) Method and System of inserting watermark for H.264/AVC video stream
JP4580898B2 (en) Digital watermark embedding device
US10200692B2 (en) Compressed domain data channel for watermarking, scrambling and steganography
JP2005341525A (en) Video-watermarking method and apparatus, and protection method and apparatus of video contents using video watermarking
KR101613945B1 (en) Method and apparatus for embedding and detecting watermark into/from contents
US8848791B2 (en) Compressed domain video watermarking
KR20120045131A (en) Apparatus and method for encoding video, apparatus and method for decoding video
KR20100122386A (en) Method and apparatus for encoding/decoding at least one image frame artificially inserted in image sequence
EP1562379A2 (en) Scrambling apparatus and method using conversion of motion vector information of video data
Celik et al. Camcorder capture robust low-complexity watermarking of MPEG-2 bit-streams
Wang et al. Robust data hiding in MPEG-2 video against transcoding
Chaudhari et al. Data hiding in Motion Vectors of Compressed Video Based On their Associated Prediction Error
Candan A transcoding robust data hiding method for image communication applications

Legal Events

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

Payment date: 20190314

Year of fee payment: 4