KR20080043323A - Coefficient modification for video watermarking - Google Patents

Coefficient modification for video watermarking Download PDF

Info

Publication number
KR20080043323A
KR20080043323A KR1020087005099A KR20087005099A KR20080043323A KR 20080043323 A KR20080043323 A KR 20080043323A KR 1020087005099 A KR1020087005099 A KR 1020087005099A KR 20087005099 A KR20087005099 A KR 20087005099A KR 20080043323 A KR20080043323 A KR 20080043323A
Authority
KR
South Korea
Prior art keywords
coefficient set
association
watermark
coefficient
value
Prior art date
Application number
KR1020087005099A
Other languages
Korean (ko)
Inventor
저스틴 피카드
지안 짜오
Original Assignee
톰슨 라이센싱
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 톰슨 라이센싱 filed Critical 톰슨 라이센싱
Priority to KR1020087005099A priority Critical patent/KR20080043323A/en
Publication of KR20080043323A publication Critical patent/KR20080043323A/en

Links

Images

Classifications

    • 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

Abstract

A method and system for watermarking video images including generating a payload, selecting sets of coefficients, modifying coefficients and embedding said watermark by enforcing relationships between property values of selected sets of coefficients with a volume of video are described. The modified coefficients replace the selected sets of coefficients.

Description

비디오 워터마킹을 위한 계수 변경{COEFFICIENT MODIFICATION FOR VIDEO WATERMARKING}Change coefficients for video watermarking {COEFFICIENT MODIFICATION FOR VIDEO WATERMARKING}

본 발명은 비디오 콘텐츠의 워터마킹에 대한 것이며 특히 디지털 씨네마 애플리케이션에서 워터마크를 삽입하는 것 및 검출하는 것과 관계있다.The present invention relates to the watermarking of video content, and in particular to embedding and detecting watermarks in digital cinema applications.

비디오는 공간축 및 시간축을 포함한다. 이미지(및 마찬가지로 비디오 프레임)은 공간 영역에 또는 변환 영역에 나타날 수 있다. '기저대역' 영역으로도 불리는, 공간 영역에서, 이미지는 픽셀값 격자로서 나타난다. 픽셀화된(즉, 이산적인) 이미지의 변환 영역 표현은 공간 영역 이미지의 수학적 변환으로부터 계산될 수 있다. 일반적으로, 이러한 변환은 완벽하게 역으로 할 수 있거나(reversible) 적어도 상당한 정보 손실없이 역으로 할 수 있다. 몇 개의 변환 영역이 존재하는데, 가장 잘 알려진 것은 FFT(고속 푸리에 변환), JPEG 압축 알고리즘에서 사용되는 DCT(이산 코싸인 변환), JPEG2000 압축 알고리즘에서 사용되는 DWT(이산 웨이블릿 변환)이다. 변환 영역에서 콘텐츠를 나타내는 한 가지 이점은 이러한 표현이 유사한 개념적인 품질에 대해 기저대역 표현보다는 일반적으로 더 컴팩트할 수 있다는 것이다. 워터마킹 방법은 기저대역에서뿐만 아니라 변환 영역에서 워터마크를 삽입하기 위해 존재한다.The video includes a spatial axis and a time axis. Images (and likewise video frames) can appear in the spatial domain or in the transform domain. In the spatial domain, also called the 'baseband' domain, the image appears as a pixel value grid. The transform domain representation of the pixelated (ie discrete) image can be calculated from the mathematical transform of the spatial domain image. In general, this conversion can be completely reversible or at least without the significant loss of information. There are several transform regions, the best known of which are FFT (fast Fourier transform), DCT (discrete cosine transform) used in JPEG compression algorithm, and DWT (discrete wavelet transform) used in JPEG2000 compression algorithm. One advantage of presenting content in the transform domain is that such representation may generally be more compact than baseband representation for similar conceptual qualities. Watermarking methods exist for embedding watermarks in the transform region as well as in the baseband.

비디오 또는 비디오 이미지는 다양한 워터마킹 접근법에 적합하다. 비디오 워터마킹으로의 이러한 접근법은 이 접근법이 공간 구조, 시간 구조, 또는 워터마킹용 비디오의 전역(global) 3차원 구조를 선택하는지를 기초로 해서, 3개의 카테고리로 그룹화될 수 있다.Video or video images are suitable for various watermarking approaches. This approach to video watermarking can be grouped into three categories based on whether this approach selects a spatial structure, a temporal structure, or a global three-dimensional structure of video for watermarking.

공간 비디오 워터마킹 알고리즘은 스틸 이미지 워터마킹을 기존의 이미지 워터마킹 알고리즘을 이용하는 프레임별 마크 삽입을 통해 비디오 워터마킹으로 확장시킨다. 종래 기술에서, 프레임별 워터마크는 일정 간격 상의 각 프레임에서 반복되는데, 이 간격은 임의적이며 수 프레임에서 전체 비디오까지일 수 있다. 검출기측에서, 전력 신호대 잡음비(PSNR)가 다수의 연속 프레임 상에서 반복된 동일한 워터마크 패턴을 구비하는 것이 유리하다. 그러나, 모든 프레임이 동일한 워터마크 패턴을 갖는 경우, 특별한 주의가 취해져야 할 수 있는데 이는 가능한 프레임 공모 어택(frame collusion attack)으로의 취약성을 회피하기 위해서이다. 다른 한편, 워터마크가 모든 프레임에 대해 변하는 경우, 검출하는 것이 더 어려울 수 있는 한편, 깜박임 결함을 야기하며 비디오의 안정적인 영역에서 공모 어택에 여전히 취약하다. The spatial video watermarking algorithm extends still image watermarking to video watermarking by inserting marks per frame using the existing image watermarking algorithm. In the prior art, per-frame watermarks are repeated in each frame over a certain interval, which interval is arbitrary and can be from a few frames to the entire video. On the detector side, it is advantageous for the power signal-to-noise ratio (PSNR) to have the same watermark pattern repeated on multiple successive frames. However, if all frames have the same watermark pattern, special care may need to be taken to avoid vulnerabilities to possible frame collusion attacks. On the other hand, if the watermark changes for every frame, it may be more difficult to detect, while causing flicker defects and still being vulnerable to collusion attack in stable areas of the video.

개선책으로서, 모든 프레임을 워터마크할 필요는 없다. 종래 기술에서, 자동으로 선택된 '키 프레임'(및 키 프레임 주위의 다소의 프레임)만이 워터마킹된다. 키 프레임은 두 개의 경계 샷 프레임 사이에서 발견된 안정적인 프레임이며, 프레임 속도 변화 후에도 다시 신뢰할만하게 위치될 수 있다. 키 프레임만을 워터마킹하는 것은 충실도 제약에 대한 압박을 감소시킬 뿐만 아니라 더 나은 보안 및 더 적은 계산 강도를 야기할 수 있다. As an improvement, it is not necessary to watermark every frame. In the prior art, only automatically selected 'key frames' (and some frames around the key frames) are watermarked. The key frame is a stable frame found between two boundary shot frames and can be reliably positioned again even after a frame rate change. Watermarking only key frames not only reduces the pressure on fidelity constraints, but can also result in better security and less computational strength.

공간 영역 워터마크가 예컨대 기하학적 불변 워터마크를 이용해서, 또는 타일형 패턴의 워터마크를 복제하거나 푸리에 영역의 템플릿을 이용해서, 기하학적 변환에 강한 스틸 이미지 워터마킹 기법으로부터 이익을 볼 수 있으나, 특히 프로젝팅된 영화의 캠코더 캡쳐 동안에 발생하는 기하학적 변환 및 스크린 만곡으로 인해 역으로 하는 것이 어렵다. 나아가, 이러한 두 개의 접근법은 신호 처리 어택에 대해 안전하지 않은데, 예컨대, 푸리에 영역의 템플릿이 쉽게 제거될 수 있다. 따라서, 공간 영역 워터마크는 원래의 콘텐츠가 등록을 위해 사용되는 경우 더 쉽게 그리고 안전하게 검출될 수 있다. 종래 기술에서, 반-자동 등록 방법이 사용되는데 이는 원래의 프레임 내의 특징점을 추출된 프레임 내의 특징점과 매칭시킨다. 평판 스크린 상의 프로젝팅을 위해, 최소 네 개의 기준점이 변환을 역으로 하기 위해 매칭되어야 한다. 조작자는 미리-계산된 특징점 세트로부터 적어도 네 개의 특징점을 수동으로 선택한다. 2-레벨 등록이 완전히 자동으로 행해질 수 있다: 우선 시간 영역에서, 이후 공간 영역에서. 프레임 서명에 대한 데이터베이스(지문, 소프트 해쉬 또는 메시지 다이제스트로도 불림)가 워터마크 검출기에 의해 액세스되어, 추출된 키 프레임을 대응하는 원래의 프레임과 매칭시킨다. 후자는 이후 테스트 프레임의 자동 공간 등록을 위해 사용된다.Spatial area watermarks can benefit from still image watermarking techniques that are resistant to geometric transformations, for example by using geometric invariant watermarks, or by duplicating a watermark of a tiled pattern or by using a template of Fourier region, It is difficult to reverse due to geometrical transformations and screen curvatures that occur during camcorder capture of a casted movie. Furthermore, these two approaches are not safe for signal processing attacks, for example, the template of the Fourier region can be easily removed. Thus, the spatial area watermark can be detected more easily and securely if the original content is used for registration. In the prior art, a semi-automatic registration method is used, which matches feature points in the original frame with feature points in the extracted frame. For projection on a flat screen, at least four reference points must be matched to reverse the transformation. The operator manually selects at least four feature points from a set of pre-computed feature points. Two-level registration can be done completely automatically: first in the time domain, then in the spatial domain. A database for frame signatures (also called fingerprints, soft hashes or message digests) is accessed by the watermark detector to match the extracted key frame with the corresponding original frame. The latter is then used for automatic space registration of test frames.

그러나, 키 프레임의 선택을 위한 계산은, 실시간 애플리케이션을 위한 워터마크 삽입시에 이용가능하지 않은, 업커밍(upcoming) 프레임을 필요로 한다는 것이 주목되어야 한다. 대안적인 방법은 프레임 처리와 재생 사이에 일정한 시간 지연을 유지하는 것이다.However, it should be noted that the calculation for the selection of the key frame requires an upcoming frame, which is not available at the time of watermark embedding for the real time application. An alternative method is to maintain a constant time delay between frame processing and playback.

종래 기술의 시간 워터마킹 방식은 각 프레임 내의 전역 휘도를 바꿈으로써, 워터마크를 삽입하기 위해 단지 시간축을 이용한다. 이는 워터마크를 기하학적 왜곡에 내재적으로 강하게 만들뿐만 아니라, 캠코더 어택 후에 워터마크 판독을 단순화시킨다. (통상적으로 캠코딩된 비디오를 깜박임 해제시킬 때 적용되는) 시간적인 저역 통과 필터링에 대한 워터마크의 강력함은 당해 기술에서 알려진 그밖의 방법을 이용해서 개선될 수 있다. 그러나, 워터마크는 시간적인 탈-동기화(특히 프레임 편집 후)에 약할 수 있다. 그러나, 동기화는 또한 탈동기화된 비디오와 원래의 비디오 사이에 키 프레임을 매칭함으로써 복구될 수 있다. Prior art time watermarking schemes only use the time base to insert a watermark by changing the global luminance within each frame. This not only makes the watermark inherently strong in geometric distortion, but also simplifies the watermark reading after camcorder attack. The power of the watermark for temporal lowpass filtering (usually applied when unflashing the camcorder's video) can be improved using other methods known in the art. However, watermarks can be weak for temporal de-synchronization (especially after frame editing). However, synchronization can also be restored by matching key frames between the desynchronized video and the original video.

두 개의 이전의 접근법(공간 또는 시간 워터마킹)은 워터마킹을 위해 세 개의 이용가능한 차원 중 하나 또는 둘을 이용한다. 비디오 내의 세 개의 이용가능한 차원 중 하나 또는 둘의 워터마크 구조의 부재는 워터마크에 이용가능한 공간의 서브최적의 사용을 야기한다. Bloom 등의 미국 특허 번호 6,885,757 "Method and Apparatus for Providing an Asymmetric Watermark Carrier"에 기재된 방법은 비디오의 구조를 완벽하게 이용한다. 위 특허의 확산-스펙트럼 방법에서, 이 기법은 명백하게 강력하고 안전하나, 검출기는 검출 이전에 테스트 비디오를 원래의 비디오와 동기화시켜야 한다. Two previous approaches (spatial or temporal watermarking) use one or two of the three available dimensions for watermarking. The absence of one or two watermark structures in the three available dimensions in the video results in the suboptimal use of space available for the watermark. The method described in Bloom et al. US Pat. No. 6,885,757 " Method and Apparatus for Providing an Asymmetric Watermark Carrier " fully utilizes the structure of the video. In the spread-spectrum method of the above patent, this technique is obviously powerful and safe, but the detector must synchronize the test video with the original video before detection.

본 발명의 측면은 연속 프레임에 걸쳐서 또는 단일 프레임 내의 일정 계수의 속성값 사이에서 제약-기반 관계를 의사-랜덤하게 삽입하는 것을 수반한다. 이 관계는 워터마크 정보를 인코딩한다.Aspects of the present invention involve pseudo-randomly inserting constraint-based relationships between attribute values of constant coefficients over consecutive frames or within a single frame. This relationship encodes watermark information.

'계수'는 데이터 요소 세트로서 표시되는데, 이는 비디오, 이미지, 또는 오디오 데이터를 포함한다. '콘텐츠'라는 용어는 임의의 데이터 요소 세트를 표시하는 일반적인 용어로서 사용될 것이다. 콘텐츠가 기저대역 영역 내에 있는 경우, 계수는 '기저대역 계수'로 표시될 것이다. 콘텐츠가 변환 영역 내에 있는 경우, 계수는 '변환 계수'로 표시될 것이다. 예컨대, 이미지, 또는 비디오의 각 프레임이 공간 영역 내에 나타나는 경우, 픽셀이 이미지 계수이다. 이미지 프레임이 변환 영역 내에 나타나는 경우, 변환된 이미지의 값이 이미지 계수이다.'Coefficient' is represented as a set of data elements, which includes video, image, or audio data. The term 'content' will be used as a generic term for indicating any set of data elements. If the content is in the baseband region, the coefficient will be expressed as a 'baseband coefficient'. If the content is in the transform region, the coefficient will be indicated as 'transform coefficient'. For example, if each frame of an image, or video, appears within a spatial region, the pixel is an image coefficient. If an image frame appears within the transform region, the value of the transformed image is the image coefficient.

본 발명은 특히 디지털 씨네마 애플리케이션에서 JPEG200을 위한 DWT를 다룬다. 픽셀화된 이미지의 DWT는 수직 및 수평의 저역-통과 및 고역-통과 필터의 이미지 픽셀로의 연속적인 사용에 의해 계산되는데, 결과 값은 '웨이블릿 계수'로 불린다. 웨이블릿은 단지 하나 또는 수 개의 싸이클 동안 지속하는 발진 파형이다. 각 반복시에, 이전 반복의 저역-통과 필터링된 웨이블릿 계수가 데시메이트(decimate)되고, 이후 저역-통과 수직 필터 및 고역-통과 수직 필터를 겪으며, 이 프로세스의 결과가 저역-통과 수평 및 고역-통과 수평 필터를 통해 전달된다. 결과적인 계수 세트가 네 개의 '부대역' 즉, LL, LH, HL 및 HH 부대역으로 그룹화된다.The present invention addresses DWT for JPEG200, particularly in digital cinema applications. The DWT of the pixelated image is calculated by the continuous use of the vertical and horizontal low-pass and high-pass filters into the image pixels, the resulting value being called the 'wavelet coefficient'. A wavelet is an oscillating waveform that lasts for only one or several cycles. At each iteration, the low-pass filtered wavelet coefficients of the previous iteration are decimated, followed by a low-pass vertical filter and a high-pass vertical filter, and the result of this process is low-pass horizontal and high-pass. Passing is passed through a horizontal filter. The resulting set of coefficients is grouped into four 'subbands', LL, LH, HL and HH subbands.

즉, LL, LH, HL 및 HH 계수가 각각 저역-통과 수직/저역 통과 수평 필터, 저역-통과-수직/고역-통과 수평 필터, 고역-통과 수직/저역-통과 수평 필터, 고역-통과 수직/고역-통과 수평 필터의 이미지로의 연속적인 사용으로부터 발생하는 계수이다. That is, the LL, LH, HL, and HH coefficients are low-pass vertical / low pass horizontal filters, low-pass-vertical / high-pass horizontal filters, high-pass vertical / low-pass horizontal filters, high-pass vertical / The coefficient resulting from the continuous use of the high-pass horizontal filter into the image.

이미지는 상이한 고유의(native) 컬러에 대응하는 다수의 채널(또는 성분)을 구비할 수 있다. 이미지가 그레이스케일인 경우, 이 이미지는 휘도 성분을 나타내는 하나의 채널만을 구비한다. 일반적으로, 이미지는 컬러가 있으며, 이 경우 (때때로 상이한 수의 채널이 이용되나) 세 개의 채널이 상이한 컬러 성분을 나타내기 위해 통상적으로 사용된다. 세 개의 채널은 각각 적색, 녹색, 및 청색 성분을 나타낼 수 있는데, 이 경우, 이미지는 RGB 컬러 공간에 나타나나, 많은 그밖의 컬러 공간이 사용될 수 있다. 이미지가 다수의 채널을 구비하는 경우, DWT가 일반적으로 각 컬러 채널 상에서 별도로 계산된다.An image may have multiple channels (or components) corresponding to different native colors. If the image is grayscale, this image has only one channel representing the luminance component. In general, the image is colored, in which case three channels (sometimes different numbers of channels are used) are typically used to represent different color components. Each of the three channels can represent red, green, and blue components, in which case the image appears in the RGB color space, but many other color spaces can be used. If the image has multiple channels, the DWT is typically calculated separately on each color channel.

각 반복은 계수의 일정한 '층' 또는 '레벨'에 대응한다. 계수의 제1 층은 이미지의 최고 해상도 레벨에 대응하나, 최종 층은 최저 해상도 레벨에 대응한다. 도 1은 5-레벨 웨이블릿 변환의 하나의 성분 내의 비디오 표현이다. 유닛(105-120)은 비디오 프레임이다. 유닛(125)은 최저 해상도에서 LL 부대역 계수를 가리킨다. 유닛(125a)은 프레임(f=0), 채널(c=0), 부대역(b=0), 해상도 레벨(l=0), 및 위치(x 및 y=0)인 (f,c,l,b,x,y)에서 계수를 나타낸다.Each iteration corresponds to a constant 'layer' or 'level' of the coefficients. The first layer of coefficients corresponds to the highest resolution level of the image, while the final layer corresponds to the lowest resolution level. 1 is a video representation within one component of a five-level wavelet transform. Units 105-120 are video frames. Unit 125 points to the LL subband coefficient at the lowest resolution. Unit 125a is a frame (f = 0), channel (c = 0), subband (b = 0), resolution level (l = 0), and position (x and y = 0), where (f, c, coefficients in l, b, x, y).

비디오의 3D 구조를 가장 잘 사용하기 위해, 본 발명은 시간축 및 공간축을 이용한다. 공간 등록은 프로젝팅 및 캡쳐 후 영화에 대해 달성하기가 힘들기 때문에, 본 발명은 매우 낮은 공간 주파수 또는 낮은 공간 주파수의 전역 특성을 이용하는데, 이는 공간 등록을 위한 기하학적 왜곡에 덜 민감하다. 시간 주파수는 어택 동안에 발생하는 대부분의 변환이 시간-선형적이기(time-linear) 때문에 더 쉽게 복구된다.In order to best use the 3D structure of video, the present invention utilizes a time axis and a space axis. Since spatial registration is difficult to achieve for a movie after projecting and capturing, the present invention utilizes a very low spatial frequency or a global characteristic of low spatial frequency, which is less sensitive to geometric distortions for spatial registration. The time frequency is more easily recovered because most of the transformations occurring during the attack are time-linear.

본 발명에서, 비디오의 저-해상도 웨이블릿 계수는 직접 워터마킹된다. 프레임 내의 픽셀 수가 최저 해상도 웨이블릿 계수의 수보다 약 1000배 더 크기 때문에, 동작의 수는 본 발명에서 잠재적으로 훨씬 작다.In the present invention, the low-resolution wavelet coefficients of the video are directly watermarked. Since the number of pixels in a frame is about 1000 times larger than the number of lowest resolution wavelet coefficients, the number of operations is potentially much smaller in the present invention.

비디오 이미지를 워터마킹하기 위한 방법 및 시스템이 설명되는데, 이는 워터마크를 생성하는 것, 및 생성된 워터마크를, 비디오 볼륨과 선택된 계수 세트의 특성 값 사이의 연관(relationship)을 실시함으로써, 비디오 이미지에 삽입하는 것을 포함한다. 워터마크는 이에 따라 비디오 볼륨에 적응적으로 삽입된다. 비디오 이미지를 워터마킹하기 위한 방법 및 시스템이 또한 설명되는데, 이는 계수 세트를 선택하는 것, 및 비디오 볼륨과 선택된 계수 세트의 특성 값 사이의 연관을 실시하는 것을 포함한다. 비디오 이미지를 워터마킹하기 위한 방법 및 시스템이 또한 설명되는에, 이는 페이로드를 생성하는 것, 계수 세트를 선택하는 것, 계수를 변경하는 것, 및 비디오 볼륨과 선택된 계수 세트의 특성 값 사이의 연관을 실시함으로써 상기 워터마크를 삽입하는 것을 포함한다. 변경된 계수가 선택된 계수 세트를 대체한다. A method and system for watermarking a video image is described, wherein the video image is generated by generating a watermark, and by performing a relationship between the generated watermark and the characteristic value of the selected coefficient set. It includes inserting in. The watermark is thus adaptively inserted in the video volume. A method and system for watermarking a video image is also described, which includes selecting a coefficient set and performing an association between the video volume and characteristic values of the selected coefficient set. A method and system for watermarking a video image is also described, which includes generating a payload, selecting a coefficient set, changing a coefficient, and an association between video volume and characteristic values of the selected coefficient set. And embedding the watermark. The changed coefficient replaces the selected coefficient set.

비디오 이미지 내에서 워터마크를 검출하기 위한 방법 및 시스템이 설명되는데, 이는 신호를 준비하는 것, 특성값을 추출 및 계산하는 것, 비트값을 검출하는 것 및 페이로드를 디코딩하는 것을 포함하며, 여기서 페이로드는 비디오 볼륨 내에서 특성값 사이의 연관을 실시함으로써 생성 및 삽입된 비트열이다. 비디오 이미지 내에서 워터마크를 검출하기 위한 방법 및 시스템이 또한 설명되는데, 이는 신호를 준비하는 것 및 페이로드를 디코딩하는 것을 포함하며, 여기서 페이로드는 비디오 볼륨 내에서 특성값 사이의 연관을 실시함으로써 생성 및 삽입된 비트열이다. 비디오 볼륨 내에서 워터마크를 검출하기 위한 방법 및 시스템이 또한 설명되는데, 이는 신호를 준비하는 것, 특성값을 추출 및 계산하는 것, 및 비트값을 검출하는 것 을 포함한다.A method and system for detecting a watermark in a video image are described, which includes preparing a signal, extracting and calculating characteristic values, detecting bit values, and decoding a payload, wherein The payload is a string of bits created and inserted by performing an association between feature values within the video volume. A method and system for detecting a watermark within a video image is also described, which includes preparing a signal and decoding the payload, where the payload is implemented by performing an association between characteristic values within the video volume. Generated and inserted bit string. A method and system for detecting a watermark in a video volume is also described, which includes preparing a signal, extracting and calculating characteristic values, and detecting bit values.

본 발명은 하드웨어, 펌웨어, FPGA, ASIC 등으로 구현될 수 있으나, 컴퓨터 또는 처리 디바이스 내에 상주하는 소프트웨어로 가장 잘 구현되는데, 상기 디바이스는 서버, 이동 디바이스 또는 이들의 임의의 등가물일 수 있다. 상기 방법은 단계를 프로그래밍하고 프로그램을 컴퓨터 판독가능 매체에 저장함으로써 가장 잘 구현/수행된다. 실시간 처리에 필요한 속도가 단계의 더 많은 시퀀스 중 하나를 위한 하드웨어를 필요로 하는 경우에, 본 명세서에 설명된 프로세스 및 단계의 모든 부분 또는 임의의 부분을 위한 하드웨어 솔루션이 어떠한 일반성의 손실없이 쉽게 구현될 수 있다. 이 하드웨어 솔루션은 이때 컴퓨터 또는 처리 디바이스, 이를테면 그러나 제한없이, 서버 또는 이동 디바이스에 삽입될 수 있다. 디지털 씨네마 애플리케이션을 위해 JPEG2000 이미지를 실시간 워터마킹하기 위한 구현예에서, 디지털 씨네마 서버 또는 프로젝터 내의 JPEG2000 디코더는 각 프레임의 최저 해상도 레벨의 계수를 워터마킹 삽입 모듈에 전달한다. 이 삽입 모듈은 수신된 계수를 변경해서 이를 추가적인 디코딩을 위해 디코더에 반환한다. 계수의 이러한 전달, 워터마킹 및 반환은 실시간으로 수행된다.The invention may be implemented in hardware, firmware, FPGAs, ASICs, etc., but is best implemented in software residing within a computer or processing device, which device may be a server, a mobile device or any equivalent thereof. The method is best implemented / implemented by programming the steps and storing the program on a computer readable medium. If the speed required for real-time processing requires hardware for one of the more sequences of steps, the hardware solution for all or any part of the processes and steps described herein is easily implemented without any loss of generality. Can be. This hardware solution can then be inserted into a computer or processing device, such as but not limited to a server or mobile device. In an implementation for real-time watermarking JPEG2000 images for digital cinema applications, the JPEG2000 decoder in the digital cinema server or projector passes the coefficients of the lowest resolution level of each frame to the watermarking insertion module. This insertion module changes the received coefficients and returns them to the decoder for further decoding. This transfer, watermarking and return of the coefficients is performed in real time.

본 발명은 첨부된 그림과 함께 읽혀질 때 후술하는 상세한 설명으로부터 가장 잘 이해된다. 상기 그림은 아래에서 간단하게 설명된 도면을 포함하는데, 도면 상의 유사-번호는 유사한 요소를 나타낸다.The invention is best understood from the following detailed description when read in conjunction with the accompanying drawings. The figure includes the figures briefly described below, wherein like-numbers on the figures indicate similar elements.

도 1은 5-레벨 웨이블릿 변환의 하나의 성분 내의 비디오 표현을 도시하는 도면.1 illustrates a video representation within one component of a five-level wavelet transform.

도 2는 워터마킹의 페이로드 생성 단계를 도시하는 흐름도.2 is a flowchart illustrating a payload generation step of watermarking.

도 3은 워터마킹의 계수 선택 단계를 도시하는 흐름도.3 is a flowchart showing a coefficient selection step of watermarking.

도 4는 워터마킹의 계수 변경 단계를 도시하는 흐름도.4 is a flowchart showing a coefficient changing step of watermarking.

도 5는 풀 해상도에서의 비디오 프레임과 해상도 레벨 5에서의 계수로부터 재구성된 비디오 프레임을 도시하는 도면.FIG. 5 shows a video frame reconstructed from video frames at full resolution and coefficients at resolution level 5. FIG.

도 6은 D-씨네마 서버(매체 블록) 내의 워터마킹의 블록도.6 is a block diagram of watermarking in a D-cinema server (media block).

도 7은 비디오 워터마크 검출을 도시하는 흐름도.7 is a flowchart illustrating video watermark detection.

도 8은 비디오 워터마크 검출을 위한 신호 준비를 도시하는 흐름도.8 is a flowchart showing signal preparation for video watermark detection.

도 9는 교차-상관 함수를 도시하는 도면.9 illustrates a cross-correlation function.

도 10은 비디오 워터마크 검출시에 비트값의 검출을 도시하는 흐름도.Fig. 10 is a flowchart showing detection of a bit value at the time of video watermark detection.

도 11은 누적된 신호를 도시하는 도면.11 illustrates an accumulated signal.

다수의 애플리케이션은 실시간 워터마크 삽입 이를테면 셋톱 박스를 위한 그리고 디지털 씨네마 서버(또는 매체 블록으로도 불림) 또는 프로젝터를 위한 세션-기반 워터마크 삽입을 필요로 한다. 상당히 명백하나, 이는 소정의 시간에, 시간상 나중에 나오는 프레임을 사용하는 워터마킹 방법을 적용하는 것을 어렵게 만든다는 것을 언급할 가치가 있다. (예컨대 워터마크의 위치 또는 세기에 대한) 오프라인 사전-계산은 바람직하게는 회피되어야 한다. 이에 대해 몇 개의 이유가 존재하나, 두 개의 가장 중요한 이유는: 잠재적인 보안 누설(현재의 생성 워터마킹 알고리즘은 일반적으로 어택커가 삽입 알고리즘의 완전한 세부사항을 알고 있는 경우 덜 안전하다), 및 비실용성이다. Many applications require real-time watermark embedding, such as session-based watermark embedding for set-top boxes and for digital cinema servers (also called media blocks) or projectors. While quite obvious, it is worth mentioning that at some time, it makes it difficult to apply a watermarking method that uses frames later in time. Offline pre-computation (eg for the location or strength of the watermark) should preferably be avoided. There are several reasons for this, but two most important reasons are: potential security leaks (currently generated watermarking algorithms are generally less secure if the attacker knows the full details of the insertion algorithm), and impractical to be.

대부분의 애플리케이션에서, 디지털적으로 워터마킹된 콘텐츠 유닛은 일반적으로, 삽입되는 시간과 검출되는 시간 사이에서 약간의 변경을 겪는다. 이러한 변경은 '어택'으로 명명되는데, 그 이유는 이 변경이 일반적으로 워터마크를 열화시키고 워터마크의 검출을 더 어렵게 만들기 때문이다. 적용하는 동안에 이러한 어택이 당연히 발생할 것으로 예상되는 경우, 어택은 '비-의도적인' 것으로 간주된다. 비-의도적인 어택의 예는: (1) 크롭핑되고, 크기조정되고, JPEG 압축되고, 필터링 등이 되는 워터마크 이미지 (2) 텔레비전 디스플레이 상에서 시청하기 위해 NTSC/PAL SECAM으로 변환되고, MPEG 또는 DIVX 압축되고, 재-샘플링 등이 되는 워터마킹된 비디오일 수 있다. 다른 한편, 어택이 워터마크를 제거하거나 워터마크의 검출을 해칠 목적으로 고의로 행해지는 경우(즉, 워터마크가 여전히 콘텐츠 내에 있으나, 검출기에 의해 검색될 수 없음), 어택은 '의도적'이고, 어택을 수행하는 당사자는 '저작권침해자'이다. 의도적인 어택은 일반적으로 워터마크를 판독할수 없게 만드는 가능성을 최대화시키는 한편, 콘텐츠로의 개념적인 손상을 최소화시킬 목표를 갖는데, 어택의 예는 콘텐츠의 검출기와의 동기화를 매우 어렵게 만들기 위해 콘텐츠에 적용된 국부 회전/크기조정 및/또는 라인 제거/부가의 작은, 인지할 수 없는 조합일 수 있다(대부분의 워터마크 검출기는 탈-동기화에 민감하다). 툴(tool)이 위의 어택 목적을 위해 인터넷, 예컨대 Stirmark(http://www.petitcolas.net/fabien/watermarking/stirmark) 상에 존재한다.In most applications, digitally watermarked content units generally undergo some change between the time of insertion and the time of detection. This change is termed 'attack' because this change generally degrades the watermark and makes the detection of the watermark more difficult. If such an attack is expected to occur naturally during application, the attack is considered 'unintentional'. Examples of unintentional attacks include: (1) watermarked images that are cropped, scaled, JPEG compressed, filtered, etc. (2) converted to NTSC / PAL SECAM for viewing on television displays, MPEG or DIVX may be watermarked video that is compressed, resampled, or the like. On the other hand, if the attack is deliberately done to remove the watermark or spoil the detection of the watermark (ie, the watermark is still in the content but cannot be retrieved by the detector), the attack is 'intentional' and the attack The party performing this action is the 'copyright infringer'. Intentional attacks generally aim to maximize the likelihood of making the watermark unreadable, while minimizing conceptual damage to the content, an example of an attack being applied to content to make it very difficult to synchronize with the detector of the content. It may be a small, unrecognizable combination of local rotation / scaling and / or line removal / addition (most watermark detectors are sensitive to de-synchronization). A tool is present on the Internet, such as Stirmark (http://www.petitcolas.net/fabien/watermarking/stirmark) for the above attack purposes.

소위 '캠코더 어택'의 경우에, 이는 극장 내에서 재생하는 동안에 영화를 불법으로 캡쳐링하는 사람에 의해 수행되는데, 이 어택은 당사자가 불법 행위를 수행하는 경우에도 비의도적인 것으로 간주된다. 실제로, 영화 캡쳐는 워터마크를 제거할 목적으로 행해지지 않는다. 그러나, 영화의 캡쳐후, 그 사람은 워터마크가 콘텐츠 내에서 더 이상 검출될 수 없다는 것을 보장하기 위해 캡쳐링된 비디오 상에 부가적인 프로세스를 실행할 수 있다. In the case of a so-called 'camcorder attack', this is carried out by a person who illegally captures a movie during playback in a theater, which is considered unintentional even if the party is performing an illegal act. In fact, movie capture is not done for the purpose of removing the watermark. However, after capturing the movie, the person can run an additional process on the captured video to ensure that the watermark can no longer be detected in the content.

예컨대, 디지털 씨네마를 위한 세션-기반 워터마크는 다음 어택을 견뎌야 한다: 크기재조정, 레터박싱(letterboxing), 애퍼쳐 제어, 저역-통과 필터링 및 안티-앨리어싱, 브릭 월(brick wall) 필터링, 디지털 비디오 잡음 감소 필터링, 프레임-스와핑, 압축, 크기조정, 크롭핑, 덮어쓰기, 잡음 및 그밖의 변환의 부가.For example, session-based watermarks for digital cinema must withstand the following attacks: resizing, letterboxing, aperture control, low-pass filtering and anti-aliasing, brick wall filtering, digital video Add noise reduction filtering, frame-swapping, compression, scaling, cropping, overwriting, noise, and other conversions.

캠코더 어택은 연속적인 순서로 다음 어택을 포함한다: 캠코더 캡쳐, 디-인터레이싱, 크롭핑, 깜박임 해제 및 압축. 특히, 캠코더 캡쳐는 상당한 공간 왜곡을 야기한다. 본 발명은 캠코더 어택에 초점을 맞추는데, 그 이유는 이것은 캠코더 어택을 견디는 워터마크가 대부분의 그밖의 비-의도적인 어택, 예컨대 스크리너 복사(screener copy), 텔레비전 영화(telecine) 등을 견딜 것이라하는 것이 일반적으로 인식되기 때문이다. 그러나, 워터마크가 그밖의 어택을 견딘다는 것 또한 중요 하다. 비디오의 프레임은 NTSC 또는 PAL SECAM 순응형 시스템 상에서 재생하기 위해 일반적으로 인터레이싱된다. 디-인터레이싱은 실제로 검출 성능에 영향을 미치지 않으나, 캡쳐링된 비디오 품질을 개선하기 위해 해적에 의해 사용된 표준 프로세스이다. 종횡비 2.39의 비디오는 대략 4:3 종횡비를 가지고 완전히 캡쳐링된다; 비디오의 상부 및 하부 영역은 대충 크롭핑된다. 캡쳐링된 비디오는 통상적으로 교란성 깜박임을 나타내는데, 이 깜박임은 시간 영역에서 앨리어싱 효과로 인해서이다. 이 깜박임은 빠른 휘도 변화에 대응하는데, 이는 필터링될 수 있다. 깜박임 해제 필터는 이러한 깜박임 효과를 제거하기 위해 해적에 의해 종종 이용된다. 탈-깜박임 필터가 워터마크를 지울 목적으로 이용되지 않는 경우에도, 이 필터는 워터마크의 시간 구조에 매우 해로울 수 있는데, 그 이유는 각 프레임을 강하게 저역 통과 필터링할 수 있기 때문이다. 마지막으로, 캡쳐링된 영화는 이용가능한 분배 대역폭/매체/포맷 예컨대, DIVX 또는 그밖의 손실있는(lossy) 비디오 포맷에 맞도록 압축된다. 예컨대, P2P 네트워크 상에서 발견된 영화는 700 메가바이트 CD 상에 전체 100분 영화를 저장하는 것을 허용하는 파일 크기를 종종 갖는다. 이는 934 kbps, 또는 128kbps가 오디오 트랙에 대해 유지되는 경우 약 800kbps의 대략적인 총 비트 속도에 대응한다. Camcorder attack includes the following attacks in a sequential order: camcorder capture, de-interlacing, cropping, blinking and compression. In particular, camcorder capture causes significant spatial distortion. The present invention focuses on a camcorder attack, which is because the watermarks that endure the camcorder attack will withstand most other unintentional attacks such as screener copy, television, etc. Because it is generally recognized. However, it is also important that the watermark withstands other attacks. Frames of video are generally interlaced for playback on NTSC or PAL SECAM compliant systems. De-interlacing does not actually affect detection performance, but is a standard process used by pirates to improve the quality of captured video. Video with an aspect ratio of 2.39 is fully captured with an approximately 4: 3 aspect ratio; The upper and lower regions of the video are roughly cropped. Captured video typically indicates a disturbing blink, due to an aliasing effect in the time domain. This blink corresponds to a fast brightness change, which can be filtered out. Flicker cancellation filters are often used by pirates to eliminate this flickering effect. Even if the de-blink filter is not used for the purpose of erasing the watermark, this filter can be very harmful to the time structure of the watermark because it can strongly low pass filter each frame. Finally, the captured movie is compressed to fit the available distribution bandwidth / media / format such as DIVX or other lossy video format. For example, a movie found on a P2P network often has a file size that allows storing a full 100 minute movie on a 700 megabyte CD. This corresponds to an approximate total bit rate of about 800 kbps if 934 kbps, or 128 kbps is maintained for the audio track.

이러한 어택 시퀀스는 가장 심한(severe) 프로세스에 대응하는데, 이 프로세스는 피어-투-피어(P2P) 네트워크 상에서 발견될 수 있는 해적판 비디오의 수명 동안 발생한다. 이는 또한 워터마크가 견뎌야 하는 위에서 언급된 어택의 대부분을 명시적으로 또는 묵시적으로 포함한다. 캠코더 어택에 덧붙여서, 본 발명의 워터마 킹 방법 및 장치는 프레임-편집(제거 및/또는 부가) 어택을 또한 견딘다. This attack sequence corresponds to the most severe process, which occurs during the lifetime of pirated video that can be found on a peer-to-peer (P2P) network. It also includes, explicitly or implicitly, most of the above mentioned attacks that the watermark must withstand. In addition to the camcorder attack, the watermarking methods and apparatus of the present invention also withstand frame-editing (removal and / or addition) attacks.

워터마킹 검출 시스템은 검출기가 원래의 콘텐츠에 액세스할 필요가 없는 경우에 '블라인드'(또는 비-블라인드)로 불린다. 또한 소위 세미-블라인드 시스템이 존재하는데, 이 시스템은 원래의 콘텐츠로부터 도출된 데이터로의 액세스만을 요구한다. 일부 애플리케이션 이를테면 디지털 씨네마용 세션-기반 워터마크를 위한 포렌식(forensic) 추적은 블라인드 워터마크 솔루션을 명시적으로 필요로 하지 않으며 원래의 콘텐츠로의 액세스가 가능한데, 그 이유는 검출이 통상적으로 오프라인으로 행해질 것이기 때문이다. 본 발명은 블라인드 검출기를 이용하나 콘텐츠를 검출기에서 동기화시키기 위해 동기화 비트를 삽입한다. 세미-블라인드 검출기가 또한 본 발명과 함께 사용될 수 있다. 세미-블라인드 검출기가 이용되는 경우, 동기화는 결국 원래의 콘텐츠로부터 도출된 데이터를 이용해서 수행될 수 있다. 이 경우에, 동기화 비트는 필요하지 않으며, 워터마크 칩으로도 불리는 워터마크의 크기는 감소될 수 있다.The watermarking detection system is called 'blind' (or non-blind) when the detector does not need to access the original content. There is also a so-called semi-blind system, which only requires access to data derived from the original content. Forensic tracking for some applications, such as session-based watermarks for digital cinema, does not explicitly require a blind watermark solution and allows access to the original content, since detection is typically done offline. Because it is. The present invention uses a blind detector but inserts a synchronization bit to synchronize the content at the detector. Semi-blind detectors can also be used with the present invention. If a semi-blind detector is used, synchronization may eventually be performed using data derived from the original content. In this case, no synchronization bit is needed, and the size of the watermark, also called a watermark chip, can be reduced.

디지털 씨네마 애플리케이션의 특정 예에서, 35 비트인 최소 페이로드가 콘텐츠 내에 삽입될 필요가 있다. 이 페이로드는 16-비트 타임스탬프를 포함해야 한다. 타임 스탬프가 24시간/일 및 366일/년, 15분마다(시간당 4번) 생성되고 스탬프가 해마다 반복하는 경우, 35,136 타임 스탬프가 필요한데, 이는 16비트로 나타날 수 있다. 나머지 19비트는 총 524,000개의 가능한 위치/일련 번호를 위한 위치 또는 일련 번호를 나타내기 위해 이용될 수 있다.In a particular example of a digital cinema application, a minimum payload of 35 bits needs to be inserted into the content. This payload must contain a 16-bit timestamp. If a time stamp is generated 24 hours / day and 366 days / year, every 15 minutes (four times per hour) and the stamp repeats year after year, a 35,136 time stamp is required, which can appear as 16 bits. The remaining 19 bits can be used to indicate the location or serial number for a total of 524,000 possible location / serial numbers.

또한, 모든 35-비트가 5분 세그먼트로부터 검출가능하도록 요구된다. 다시 말해서, 포렌식 마크를 추출하기 위해 단지 5분 비디오가 요구되어야 한다. 일 실시예에서, 본 발명은 64-비트 워터마크를 이용하며, 워터마크 칩은 3:03분마다 반복된다. 프레임 당 하나의 삽입된 비트를 가지고 초당 24 프레임에서 3:03 분 비디오에 삽입된 비디오 워터마크 칩은 4392 비트를 갖는다(1비트/프레임에서 183초*24프레임/초=4392 프레임= 4392 비트)In addition, all 35-bits are required to be detectable from the 5 minute segment. In other words, only 5 minutes of video should be required to extract forensic marks. In one embodiment, the present invention uses a 64-bit watermark, wherein the watermark chip is repeated every 3:03 minutes. A video watermark chip inserted in 3:03 minutes video at 24 frames per second with one inserted bit per frame has 4392 bits (183 seconds * 24 frames / second = 4392 frames = 4392 bits at 1 bit / frame).

본 발명의 비디오 워터마킹 방법은 콘텐츠의 상이한 특성 사이의 관계를 변경시키는 것을 기초로 한다. 특히, 정보의 비트(a bit of information)를 인코딩하기 위해, 이미지/비디오의 일정 계수가 선택되어, 상이한 세트에 할당되며, 상이한 세트의 특성값 사이의 관계를 발생시키도록 최소 방식으로 조작된다. 계수 세트는 상이한 특성값을 갖는데, 이 값은 비디오의 상이한 공간-시간 영역에서 일반적으로 변하거나, 콘텐츠를 처리한 후에 변경된다. 일반적으로, 본 발명은 단조로운(monotonic) 방식으로 변하는 특성값을 이용하며, 이를 위해 어택은 예측가능한 영향을 미치는데, 그 이유는 이 경우에 강력한 관계를 보장하는 것이 더 쉽기 때문이다. 이러한 특성은 '불변하는'으로 표시될 것이다. 본 발명은 불변하는 특성을 이용해서 가장 잘 실시되나, 그것으로 제한되지 않으며 불변하지 않는 특성을 이용해서 실시될 수 있다. 예컨대, 프레임의 평균 휘도값은 시간에 걸쳐 '불변하는' 것으로 간주된다: 이는 일반적으로, 저속의 단조로운 방식으로 변한다(경계 샷에서는 제외); 나아가, 콘트라스트 향상과 같은 어택은 일반적으로 각 프레임의 휘도값의 상대적인 순서를 참작할 것이다. The video watermarking method of the present invention is based on changing the relationship between different characteristics of the content. In particular, in order to encode a bit of information, certain coefficients of the image / video are selected, assigned to different sets, and manipulated in a minimal manner to generate relationships between different sets of characteristic values. The coefficient set has different characteristic values, which generally change in different space-time regions of the video, or after processing the content. In general, the present invention utilizes characteristic values that change in a monotonic manner, for which the attack has a predictable effect since it is easier to ensure a strong relationship in this case. These characteristics will be marked as 'invariant'. The present invention is best practiced using invariant properties, but is not limited thereto and can be practiced using invariant properties. For example, the average luminance value of a frame is considered to be 'invariant' over time: it generally changes in a slow, monotonous manner (except for a boundary shot); Further, attacks such as contrast enhancement will generally take into account the relative order of the luminance values of each frame.

비디오 콘텐츠는 통상 다수의 별개의 성분(또는 채널) 이를테면 RGB(적색/녹 색/청색, 컴퓨터 그래픽 및 컬러 텔레비전에서 광범위하게 사용됨), YIQ, YUV 및 YCrCb(방송 및 텔레비전에서 사용됨)으로 나타난다. YCrCb는 두 개의 주요 성분으로 구성된다: 휘도(Y) 및 채도(CrCb 또는 UV로도 알려짐). 비디오 콘텐츠의 휘도 또는 Y-성분의 양은 콘텐츠의 밝기를 가리키고, 색차(또는 채도)는 비디오 콘텐츠의 컬러 부분을 설명하는데, 이는 색조 및 포화(saturation) 정보를 포함한다. 색조는 이미지의 컬러 농담(tint)을 가리킨다. 포화는 출력 컬러가 입력 파라미터 내의 변화와 무관하게, 일정한 조건을 설명한다. YCrCb의 색차 성분은 컬러의 적색(Cr) 성분 및 청색(Cb)을 포함한다. 본 발명은 비디오 콘텐츠를 W*H*N의 크기를 갖는 다수의 3D 계수 볼륨으로서 간주한다(W, H는 각각 기저대역 영역 내의 또는 변환 영역 내의 프레임의 너비, 높이이고, N은 비디오의 프레임의 수이다). 각 3D 볼륨은 비디오 콘텐츠의 하나의 성분 표현에 대응한다. 워터마크 정보는 하나 이상의 볼륨 내에서 선택된 계수 세트의 일정 특성값 사이에서 제약-기반 연관을 실시함으로써 삽입된다. 그러나, 인간의 눈이 컬러(색차) 변화에 대해서보다 전체적인 세기(휘도) 변화에 대해 훨씬 덜 민감하기 때문에, 워터마크는 바람직하게는 비디오 콘텐츠의 휘도 성분을 나타내는 3D 비디오 볼륨에 삽입된다. 휘도의 또 하나의 이점은 이것이 비디오의 변환에 더 불변한다는 것이다. 이하에서, 3D 비디오 볼륨은 달리 지정되지 않을 때까지 휘도 성분을 나타내나, 이는 임의의 성분을 나타낼 수 있다.Video content is typically represented by a number of distinct components (or channels) such as RGB (red / green / blue, widely used in computer graphics and color television), YIQ, YUV and YCrCb (used in broadcast and television). YCrCb consists of two main components: luminance (Y) and saturation (also known as CrCb or UV). The amount of brightness or Y-component of the video content indicates the brightness of the content, and the color difference (or saturation) describes the color portion of the video content, which includes hue and saturation information. Tint refers to the color tint of an image. Saturation describes a condition where the output color is independent of changes in the input parameters. The color difference component of YCrCb includes a red (Cr) component of color and blue (Cb). The present invention regards the video content as a plurality of 3D coefficient volumes having a size of W * H * N (W, H are the width and height of the frame in the baseband region or the transform region, respectively, and N is the frame of the video. Number). Each 3D volume corresponds to one component representation of the video content. Watermark information is inserted by making a constraint-based association between certain characteristic values of a selected coefficient set within one or more volumes. However, since the human eye is much less sensitive to changes in overall intensity (luminance) than to changes in color (color difference), the watermark is preferably embedded in a 3D video volume representing the luminance component of the video content. Another advantage of luminance is that it is more invariant to the conversion of video. In the following, the 3D video volume represents a luminance component until otherwise specified, which may represent any component.

본 발명에서, 계수 세트는 콘텐츠 내의 임의의 위치로부터 취해진 (1에서 W*H*N까지의) 임의의 수의 계수를 포함할 수 있다. 각 계수는 값을 갖는다. 그러므 로 상이한 특성값이 계수 세트로부터 계산될 수 있다 - 일부 예가 아래에 주어진다. 워터마크 정보를 삽입하기 위해, 다수의 연관이 다수의 계수 세트 내의 계수 값을 바꿈으로써 실시될 수 있다. 연관은 비-제한적인 방식으로, 하나 이상의 계수세트의 하나 이상의 특성 값이 충족시켜야 하는 하나의 또는 한 세트의 조건으로서 이해되어야 한다.In the present invention, the coefficient set may comprise any number of coefficients (from 1 to W * H * N) taken from any position in the content. Each coefficient has a value. Therefore, different characteristic values can be calculated from the coefficient set-some examples are given below. To insert watermark information, multiple associations can be made by changing the coefficient values in the multiple coefficient sets. The association should be understood as one or a set of conditions that, in a non-limiting manner, one or more characteristic values of one or more coefficient sets must be met.

다양한 유형의 특성이 각 계수 세트에 대해 정의될 수 있다. 특성은 바람직하게는 기저대역 영역에서(이를테면 밝기, 콘트라스트, 휘도, 에지, 컬러 히스토그램) 또는 변환 영역에서(주파수 대역의 에너지) 계산된다. 일부 특성 값은 기저대역 및 변환 영역에서 동일하게 계산될 수 있는데, 이는 휘도의 경우와 같다. Various types of properties can be defined for each coefficient set. The characteristic is preferably calculated in the baseband region (such as brightness, contrast, brightness, edge, color histogram) or in the transform region (energy in frequency band). Some characteristic values can be calculated equally in the baseband and the transform domain, as in the case of luminance.

정보의 비트를 삽입하기 위한 하나의 적합한 방식은 두 개의 계수 세트를 선택하고 이들의 특성값 사이의 사전-정의된 연관을 실시함으로써이다. 이 연관은 예컨대, 제1 계수 세트의 하나의 특성값이 제2 계수 세트의 대응 특성값보다 더 크다는 것일 수 있다. 그러나, 정보의 비트를 삽입하기 위한 방식에서 몇 가지 변화가 존재한다는 것이 주목된다. 두 개의 선택된 계수 세트 내에서 정보의 1보다 더 많은 비트를 삽입하기 위한 하나의 방식은 두 개의 계수 세트의 하나 초과의 특성의 값 사이에서 연관을 실시하는 것이다.One suitable way to insert bits of information is by selecting two sets of coefficients and implementing a pre-defined association between their characteristic values. This association may be, for example, that one characteristic value of the first coefficient set is greater than the corresponding characteristic value of the second coefficient set. However, it is noted that there are some variations in the way to insert bits of information. One way to insert more than one bit of information in two selected coefficient sets is to establish an association between the values of more than one characteristic of the two coefficient sets.

하나의 계수 세트만을 이용해서 그리고 이 계수 세트의 특성값의 연관을 실시함으로써 정보 비트를 삽입하는 것이 또한 가능하다. 예컨대, 특성값이 일정값보다 더 크게 설정될 수 있는데, 이 일정값은 사전정의되거나 콘텐츠로부터 적응적으로 계산될 수 있다. 하나의 계수 세트를 이용해서, 네 개의 독점적인 간격을 정의 해서, 그리고 특성값이 일정 간격 내에 놓인다는 조건을 실시해서 정보의 2보다 더 많은 비트를 삽입하는 것이 또한 가능하다. 1보다 더 많은 비트를 삽입하기 위한 그밖의 방식은 1보다 더 많은 특성값을 이용하는 것, 및 특성 값 각각에 대해 연관을 실시하는 것을 포함한다.It is also possible to insert information bits using only one coefficient set and by associating the characteristic values of the coefficient set. For example, the characteristic value may be set larger than a certain value, which may be predefined or adaptively calculated from the content. It is also possible to insert more than two bits of information by using one coefficient set, defining four exclusive intervals, and subjecting the characteristic values to fall within a certain interval. Other ways to insert more bits than one include using more than one characteristic value, and associating each characteristic value.

일반적으로, 기본적인 방식은 임의의 수의 계수 세트, 임의의 수의 특성 값 및 실시될 임의의 수의 연관에 대해 일반화될 수 있다. 이는 더 많은 양의 정보를 삽입하기 위한 유리할 수 있으나, 선형 프로그래밍과 같은 특정 기법이 다양한 연관이 최소의 지각 변화와 동시에 실시된다는 것을 보장하기 위해 사용되어야 할 수 있다. 위에서 주목된 바와 같이, 불변하는 특성값이 사용되는 경우에 연관을 실시하는 것이 더 쉬울 수 잇다.In general, the basic scheme may be generalized for any number of coefficient sets, any number of characteristic values, and any number of associations to be made. This may be advantageous for inserting larger amounts of information, but certain techniques, such as linear programming, may need to be used to ensure that various associations are performed simultaneously with minimal perceptual changes. As noted above, it may be easier to make an association if a constant characteristic value is used.

3D 비디오 볼륨(및 계수 세트) 내의 많은 특성이 공간-시간 방식에서 및/또는 콘텐츠의 처리 전/후에 비교적 불변한다. 불변하는 특성의 예는 다음을 포함한다:Many characteristics in 3D video volumes (and coefficient sets) are relatively invariant in a space-time manner and / or before or after processing of content. Examples of invariant properties include:

·연속 프레임 내의 또는 동일 프레임의 상이한 부대역 내의 계수(예컨대, 웨이블릿 계수)Coefficients in consecutive frames or in different subbands of the same frame (e.g. wavelet coefficients)

·연속 프레임 내의 평균 휘도값Average luminance value in consecutive frames

·연속 프레임 내의 평균 텍스쳐 특징Average texture features in consecutive frames

·연속 프레임 내의 평균 에지 측정치Average edge measurement in consecutive frames

·연속 프레임 내의 평균 컬러 또는 휘도 히스토그램 분포Average color or luminance histogram distribution within successive frames

·일정 주파수 범위 내의 에너지Energy within a certain frequency range

·추출된 특징점에 의해 정의된 영역 내의 상기 불변하는 특성 중 임의의 것Any of the above immutable properties in the area defined by the extracted feature point

워터마킹 알고리즘은 일반적으로 비밀 '키'와 함께 작동하는데, 이 키는 삽입기 또는 검출기에게만 알려져 있다. 비밀키를 이용하는 것은 암호화 시스템에서와 유사한 이점을 제공한다: 예컨대, 워터마킹 시스템의 세부사항이 일반적으로, 시스템의 보안을 손상시키지 않고 알려질 수 있으며, 따라서 알고리즘은 피어 검토(peer review) 및 잠재적인 개선을 위해 공개될 수 있다. 나아가, 워터마킹 시스템의 비밀이 키 내에 보유되는데, 즉, 키가 알려지는 경우 사용자는 단지 워터마크를 삽입 및/또는 검출할 수 있다. 키는 콤팩트한 크기(통상 128 비트)로 인해 더 쉽게 숨겨질 수 있고 송신될 수 있다. 대칭키가 알고리즘의 일정 측면을 의사-랜덤화하기 위해 이용된다. 통상적으로, 이 키는 에러 정정 및 검출을 위해 인코딩되고 콘텐츠에 맞도록 확장된 후에 (예컨대, DES와 같은 표준 암호화 알고리즘을 이용해서) 페이로드를 암호화하기 위해 이용된다. 본 발명의 방법을 위해, 이 키는 또한 연관을 설정하기 위해 이용될 수 있는데, 이 연관은 두 개의 상이한 계수 세트의 특성값 사이에서 삽입될 것이다. 그러므로, 이 연관은 '사전-정의된' 것으로 간주되는데, 그 이유는 이 연관이 소정의 비밀키에 대해 고정되어 있기 때문이다. 워터마크를 삽입하기 위해 하나보다 더 많은 사전-정의된 연관이 존재하는 경우, 이 키는 소정의 정보 비트에 대해 그리고 소정의 계수 세트에 대해, 정밀한 연관을 랜덤하게 선택하기 위해서도 이용될 수 있다.Watermarking algorithms generally work with secret 'keys', which are known only to inserters or detectors. Using a secret key offers similar advantages as in an encryption system: for example, the details of a watermarking system can generally be known without compromising the security of the system, so that algorithms can be used for peer review and potential It may be released for improvement. Furthermore, the secret of the watermarking system is held in the key, i.e. the user can only insert and / or detect the watermark if the key is known. The key can be more easily hidden and transmitted due to its compact size (typically 128 bits). Symmetric keys are used to pseudo-randomize certain aspects of the algorithm. Typically, this key is used to encrypt the payload after it has been encoded for error correction and detection and expanded to fit the content (eg using a standard encryption algorithm such as DES). For the method of the present invention, this key can also be used to establish an association, which association will be inserted between the characteristic values of two different coefficient sets. Therefore, this association is considered 'pre-defined' because this association is fixed for a given private key. If there is more than one pre-defined association for embedding a watermark, this key can also be used to randomly select a precise association for a given bit of information and for a given set of coefficients.

선택된 계수 세트는 일반적으로 '구역'에 대응하는데, 구역은 콘텐츠의 동일 영역 내에 위치된 계수 세트로서 이해되어야 한다. 계수 구역이 콘텐츠의 공간-시 간 구역에 대응할 수 있는데, 이는 기저대역 계수 및 웨이블릿 계수의 경우와 같으나, 반드시 이 경우일 필요는 없다. 예컨대, 콘텐츠의 3D 푸리에 변환 계수는 공간 또는 시간 구역 어느 것에도 대응하지 않으나, 유사한 주파수 구역에는 대응한다.The selected coefficient set generally corresponds to a 'zone', which should be understood as a coefficient set located within the same area of content. The coefficient zone may correspond to the space-time zone of the content, which is the same as for baseband coefficients and wavelet coefficients, but need not necessarily be the case. For example, the 3D Fourier transform coefficients of the content do not correspond to either spatial or temporal zones but to similar frequency zones.

예컨대, 계수 세트는 구역에 대응할 수 있는데, 이 구역은 하나의 프레임을 위한 일정한 공간 영역 내의 모든 계수로 이루어질 수 있다. 정보 비트를 인코딩하기 위해, 두 개의 연속 프레임으로부터의 두 개의 구역이 선택되고 이것의 대응 계수값은 일정 특성 사이에서 연관을 실시하기 위해 변경된다. 아래에서 더 상세히 설명되는 바와 같이, 원하는 연관이 이미 존재하는 경우 계수값을 변경하는 것이 반드시 필요하지는 않을 수 있다는 것이 주목된다.For example, a coefficient set may correspond to a zone, which may consist of all the coefficients within a given spatial region for one frame. To encode the information bits, two zones from two consecutive frames are selected and their corresponding coefficient values are changed to effect an association between certain characteristics. As described in more detail below, it is noted that it may not necessarily be necessary to change the coefficient value if the desired association already exists.

다시 또 하나의 예를 위해, 웨이블릿 변환을 이용해서 각 프레임을 위한 각 해상도 레벨에서 각 위치 및 각 성분(채널)을 위한 네 개의 부대역에 대응하는 네 개의 웨이블릿 계수(LL, LH, HL, 및 HH)가 존재한다. 계수 세트는 단지 네 개의 부대역 중 하나 내에 하나의 계수를 포함할 수 있다. C1, C2, C3, C4가 동일한 위치, 채널 및 해상도 레벨에 그러나 네 개의 부대역 각각 내에 위치된 네 개의 계수라고 가정하자. 워터마크를 삽입하기 위한 하나의 방법은 HL 및 LH 부대역 각각 내의 계수에 대응하는, C2와 C3 사이에 연관을 실시하는 것이다. 연관의 일례는 C2가 C3보다 더 크다는 것이다. 워터마크를 삽입하기 위한 또 하나의 방법은 프레임 내의 C1-C4와 연속 프레임 내의 대응 계수 사이의 연관을 실시하는 것이다. 이 원리에 대한 변형은 단지 하나의 유형의 계수를 위한 연관을 삽입함으로써인데, 이 계수는 사전-계산된 값보다 더 커야 한다. 예컨대, 일정 해상도 레벨에서 프레임 내의 모 든 위치에 대해, 계수(LL)의 값이 사전-계산된 값보다 더 크다는 제약을 실시하는 것이 가능하다. 위 예에서, 특성값은 웨이블릿 계수 자체의 값이다.Again for another example, four wavelet coefficients (LL, LH, HL, and corresponding to four subbands for each position and each component (channel) at each resolution level for each frame using wavelet transform HH) is present. The coefficient set may contain only one coefficient in one of four subbands. Suppose C1, C2, C3 and C4 are four coefficients located at the same position, channel and resolution level but within each of the four subbands. One way to embed a watermark is to establish an association between C2 and C3, corresponding to the coefficients in each of the HL and LH subbands. One example of an association is that C2 is greater than C3. Another method for embedding a watermark is to perform an association between C1-C4 in the frame and the corresponding coefficient in the continuous frame. A variation on this principle is by inserting an association for only one type of coefficient, which must be larger than the pre-calculated value. For example, for all positions in a frame at a constant resolution level, it is possible to enforce that the value of the coefficient LL is greater than the pre-calculated value. In the above example, the characteristic value is the value of the wavelet coefficient itself.

검출측에서 워터마킹측에서와 동일한, 또는 거의 동일한 계수 세트를 식별할 수 있는 것이 필수적이다. 그렇지 않은 경우, 잘못된 계수가 선택되어, 측정된 특성값이 오류가 날 것이다. 정확한 계수를 식별하는 것은 콘텐츠가 검출 이전에 부드럽게(mildly) 처리된 경우 일반적으로 문제가 아닌데, 이 경우에 계수의 위치는 (공간 영역인지 또는 변환 영역인지와 무관하게) 변하지 않는다. 그러나, 이 처리가 기하학적인 또는 시간적인 구조를 변화시키는 경우, 캠코더 어택 동안에 일반적으로 그러하듯이, 계수는 위치를 변화시킬 가능성이 있다.It is essential that the detection side can identify the same, or nearly the same set of coefficients as on the watermarking side. Otherwise, an incorrect coefficient is chosen and the measured characteristic value will be errored. Identifying the correct coefficient is generally not a problem if the content has been mildly processed prior to detection, in which case the position of the coefficient does not change (regardless of whether it is spatial or transformed). However, if this process changes the geometric or temporal structure, the coefficient is likely to change position, as is generally the case during a camcorder attack.

콘텐츠의 시간 구조에서 변화가 존재하는 경우, 사용자는 비-블라인드 또는 세미-블라인드 방식을 이용해서 콘텐츠를 재동기화할 수 있다. 상이한 방법이 이 목적을 위해 종래 기술에서 이용가능하다. 검출이 블라인드식으로(즉, 원래의 콘텐츠로부터 도출된 임의의 데이터로의 액세스 없이) 행해져야 하는 경우, 콘텐츠를 재동기화하기 위해 검출기에 의해 사용될, 예측가능한 값을 갖는 동기화 비트를 콘텐츠에 삽입하는 것이 가능하다. 이러한 방식은 아래에서 더 상세히 설명될 것이다.If there is a change in the temporal structure of the content, the user can resynchronize the content using a non-blind or semi-blind scheme. Different methods are available in the prior art for this purpose. If detection should be done blindly (ie, without access to any data derived from the original content), inserting a synchronization bit with a predictable value into the content to be used by the detector to resynchronize the content. It is possible. This approach will be described in more detail below.

콘텐츠의 기하학적인 구조에서의 변화에 대한 강력함을 보장하기 위해, 종래 기술에서 알려진 동기화/등록 방법이 이용될 수 있는데, 이 방법은 변경된 콘텐츠 내의 위치를 원래의 콘텐츠 내의 대응 위치에 매칭함으로써 변경된 콘텐츠를 복원한다. 콘텐츠의 기하학적인 구조에서의 변화는 원래의 콘텐츠 또는 그로부터 도출 된 몇가지 데이터가 이용가능한 경우에(예컨대, 원래의 콘텐츠의 몇가지 특성 정보 또는 썸네일(thumbnail)), 예컨대, 콘텐츠의 회전, 크기조정 및/또는 크롭핑 후에 발생한다.In order to ensure robustness against changes in the geometric structure of the content, a synchronization / registration method known in the art can be used, which matches the location in the changed content with the corresponding location in the original content. Restore it. Changes in the geometric structure of the content may occur when the original content or some data derived therefrom is available (e.g., some characteristic information or thumbnail of the original content), e.g., rotation, scaling and / or content. Or occurs after cropping.

블라인드 검출의 경우에, 한 가지 가능성은 매우 낮은 공간 주파수를 이용하는 것이다. 비디오 프레임 또는 이미지를 위해, 계수의 일 구역은 완전한 비디오 프레임, 절반 또는 1/4의 프레임에 대응할 수 있다. 이 경우에, 대부분의 계수는 정확하게 선택될 것이며(구역이 완전한 비디오 프레임에 대응하는 경우에, 모든 계수), 검출은 일부 계수가 잘못된 세트에 할당되는 경우에도 일반적으로 강력하다.In the case of blind detection, one possibility is to use a very low spatial frequency. For a video frame or image, one section of the coefficient may correspond to a complete video frame, half or one quarter of a frame. In this case, most of the coefficients will be chosen correctly (all coefficients if the zone corresponds to a complete video frame), and detection is generally robust even if some coefficients are assigned to the wrong set.

기하학적인 구조에서의 변화에 내재적으로 강력하기 위한 또 하나의 방식은 실제로 단지 하나의 계수를 포함하는 구역을 이용하는 것, 및 하나의 프레임 내의 하나의 계수와 그 다음 프레임 내의 대응 위치에서의 하나의 계수 사이의 연관을 실시하는 것이다. 동일한 연관이 두 개의 프레임 내의 모든 계수에 대해 실시되는 경우, 사용자는 검출이 기하학적인 왜곡에 내재적으로 강력하다는 것을 쉽게 볼 수 있다. 기하학적인 구조에서의 변화에 대한 강력함을 보장하기 위한 연관된 방식은 상이한 부대역 내의 소정의 위치에서 상이한 웨이블릿 계수 사이의 연관을 생성하는 것이다. 예컨대, 웨이블릿 변환시에 각 해상도 레벨, 각 위치 및 성분(채널)을 위한 네 개의 부대역(LL, LH, HL 및 HH)에 대응하는 네 개의 계수가 존재한다. 프레임 내의 모든 위치에 대한 두 개의 계수 사이의 동일한 연관이 일정한 해상도 레벨에서 실시되어 워터마크 강력함을 강화시키기 위해 워터마크 비트를 삽입할 수 있다. 검출측에서, 연관이 관측되는 횟수는 어떠한 비트가 삽입되었는지에 대한 표 시자이다.Another way to be inherently robust to changes in geometric structure is to actually use a region containing only one coefficient, and one coefficient in one frame and one coefficient in the corresponding position in the next frame. Is to establish an association between them. If the same association is made for all coefficients in two frames, the user can easily see that the detection is inherently robust to geometric distortion. An associated way to ensure robustness to changes in geometric structure is to create an association between different wavelet coefficients at certain locations within different subbands. For example, there are four coefficients corresponding to the four subbands LL, LH, HL and HH for each resolution level, each position and component (channel) in the wavelet transform. The same association between two coefficients for all positions in the frame can be done at a constant resolution level to insert watermark bits to enhance watermark robustness. On the detection side, the number of times an association is observed is an indicator of which bits have been inserted.

기하학적 구조에서의 변화에 대한 강력함을 보장하기 위한 또 하나의 방식은 기하학적 구조에서의 변화에 불변하는 특징점을 이용하는 것이다. 여기서, 불변하는은 비디오 또는 이미지의 특징점을 추출하기 위해 일정 알고리즘을 이용해서, 동일한 점이 원래의 콘텐츠 및 변경된 콘텐츠 상에서 발견되는 때를 의미한다. 상이한 방법이 이 목적을 위해 종래 기술에서 알려져 있다. 그러한 특징점은 기저대역 및/또는 변환 영역에서 계수의 구역을 정하기 위해 이용될 수 있다. 예컨대, 세 개의 인접한 특징점이 내부 구역을 정하는데, 이 구역은 계수 세트에 대응할 수 있다. 또한, 세 개의 인접 특징점이 부구역을 한정하기 위해 이용될 수 있는데, 각 부구역은 계수 세트에 대응한다.Another way to ensure robustness to changes in geometry is to use feature points that are invariant to changes in geometry. Here, constant means when the same point is found on the original content and the changed content, using a certain algorithm to extract the feature point of the video or image. Different methods are known in the art for this purpose. Such feature points can be used to delimit coefficients in the baseband and / or transform regions. For example, three adjacent feature points define an inner zone, which may correspond to a coefficient set. In addition, three adjacent feature points may be used to define the subzones, each subzone corresponding to a coefficient set.

기하학적인 구조에서의 변화에 내재적으로 강력해지기 위한 또 하나의 방식은 하나의 프레임 내의 모든 계수의 전역 특성의 값과 제2 프레임 내의 모든 계수의 동일한 전역 특성의 값 사이의 연관을 실시하는 것이다. 이러한 전역 특성은 기하학적 구조에서의 변화에 불변한다는 것이 전제된다. 이러한 전역 특성의 예는 하나의 이미지 프레임의 평균 휘도값이다.Another way to be inherently robust to changes in geometric structure is to make an association between the value of the global property of all the coefficients in one frame and the value of the same global property of all the coefficients in the second frame. It is assumed that these global properties are invariant to changes in geometry. An example of such a global characteristic is the average luminance value of one image frame.

비디오의 두 개의 연속 프레임의 특성 값 사이에서 제약을 실시함으로써 비트를 삽입하는 비-제한적인 예시적인 알고리즘은 다음과 같다:A non-limiting example algorithm for inserting bits by constraining between feature values of two consecutive frames of video is as follows:

비디오의 프레임열(F1, F2, ... Fn) 내의 JPEG2000 압축 이미지인 각 프레임에 대해:For each frame, which is a JPEG2000-compressed image within the frame sequence of the video (F1, F2, ... Fn):

a) 해상도 레벨(L)에서 N계수로 구성되는, 구역을 선택하라. 계수는 LL, LH, HL 및 HH와 같은 하나 이상의 부대역에 속할 수 있다. 구역은 임의의 그러나 고정된 형상(예컨대, 직사각형)일 수 있거나 위에서 설명된 바와 같이 기하학적 어택에 직면할 때 구역의 부가적인 안정성을 위해 예컨대 특징점을 이용해서, 원래의 이미지 콘텐츠에 따라 변할 수 있다.a) Select a zone, consisting of N coefficients at resolution level (L). Coefficients may belong to one or more subbands such as LL, LH, HL, and HH. The zone may be of any but fixed shape (eg, rectangular) or may vary according to the original image content, eg using feature points for additional stability of the zone when facing a geometric attack as described above.

b ) 구역을 위한 관련 전역 특성을 결정하라. 전역 특성은 구역의 평균 휘도값, 평균 텍스쳐 특징 측정치, 평균 에지 측정치, 또는 평균 히스토그램 분포일 수 있다. P는 이러한 전역 특성의 값이다.b) Determine the relevant global characteristics for the zone. The global characteristic may be an average luminance value of the zone, an average texture feature measurement, an average edge measurement, or an average histogram distribution. P is the value of this global property.

비트열{b1, b2, ... bm}을 삽입하기 위해:To insert bit strings {b1, b2, ... bm}:

a) bi(1≤i≤m)가 0인 경우, P(F2*i+1)>P(F2*i)가 되도록 (단지 필요한 경우에)최소 방식으로 F2*i 및 F2*i+1을 변경하라.a) bi (1≤i≤m) the case of 0, P (F 2 * i + 1)> P (F 2 * i) is such that (F by at least two methods, if necessary only) i * and F 2 Change i + 1 .

b) bi(1≤i≤m)가 1인 경우, P(F2*i+1)<P(F2*i)가 되도록 (단지 필요한 경우에) 최소 방식으로 F2*i 및 F2*i+1을 변경하라.b) bi (1≤i≤m) is the case of 1, P (F 2 * i + 1) <P (F 2 * i) is such that (only if necessary) to the minimum system F 2 i * and F 2 Change i + 1 .

이 알고리즘은 두 개의 프레임의 몇 가지 특성값 사이에 연관을 삽입함으로써, 프레임마다 다수의 비트를 삽입하도록 확장할 수 있다.This algorithm can be extended to insert multiple bits per frame by inserting associations between several characteristic values of two frames.

워터마크 검출을 위해:For watermark detection:

a) 캡쳐링된 비디오를 시간 영역에서 동기화하라. 이는 동기화 비트, 비-블라인드 또는 세미-블라인드 방식을 이용해서 행해질 수 있다.a) Synchronize the captured video in the time domain. This can be done using synchronization bits, non-blind or semi-blind schemes.

b) 레벨(L)에서 N개의 계수로 구성되는 구역을 선택하라. 삽입과 마찬가지로, 구역은 고정된 형상일 수 있다.b) Select a zone consisting of N coefficients at level (L). As with insertion, the zone may be of a fixed shape.

c) 구역을 위한 관련 전역 특성을 계산하라. P'는 구역의 전역 특성의 값이다.c) Calculate the relevant global characteristics for the zone. P 'is the value of the global property of the zone.

d) P'(F2*i+1)>P'(F2*i)인 경우 비트(0)가 검출된다.d) Bit 0 is detected when P '(F 2 * i + 1 )>P' (F 2 * i ).

e) P'(F2*i+1)<P'(F2*i)인 경우 비트(1)가 검출된다.e) Bit 1 is detected when P '(F 2 * i + 1 ) <P' (F 2 * i ).

본 발명에서의 워터마킹은 세 단계로 분리된다: 페이로드 생성, 계수 선택, 및 계수 변경. 세 단계는 본 발명의 예시적인 실시예로서 아래에서 상세하게 설명된다. 상당히 많은 변화가 이러한 단계 각각에 대해 가능하며, 이러한 단계 및 설명은 제한하는 것으로 의도되지 않는다.Watermarking in the present invention is divided into three steps: payload generation, coefficient selection, and coefficient modification. Three steps are described in detail below as exemplary embodiments of the present invention. Quite a few variations are possible for each of these steps, and these steps and descriptions are not intended to be limiting.

이제 도 2를 참조컨대, 이 도면은 워터마킹의 페이로드 생성 단계를 도시하는 흐름도로서, 비밀키가 단계(205)에서 검색 또는 수신된다. 타임 스탬프를 식별하는 정보 및 디바이스의 일련 번호 또는 위치를 식별하는 번호가 단계(210)에서 검색 또는 수신된다. 페이로드가 단계(215)에서 생성된다. 디지털 씨네마 애플리케이션을 위한 페이로드는 최소 35 비트이며 본 발명의 바람직한 실시예에서 64비트이다. 페이로드는 이후 예컨대, 단계(220)에서 BCH 코딩을 이용해서, 에러 정정 및 검출을 위해 인코딩된다. 인코딩된 페이로드는 선택적으로 단계(225)에서 복제된다. 선택적으로, 이후 동기화 비트가 단계(230)에서 키를 기초로 해서 생성된다. 동기화 비트는 블라인드 검출을 이용할 때 생성 및 이용된다. 이 동기화 비트는 또한 세미-블라인드 및 비-블라인드 검출 방식을 이용할 때 생성 및 이용될 수 있다. 동기화 비트가 생성된 경우, 이 동기화 비트는 단계(235)에서 시퀀스와 어셈블링된 다. 시퀀스는 단계(240)에서 페이로드에 삽입되고 전체 페이로드는 이후 단계(245)에서 암호화된다.Referring now to FIG. 2, this diagram is a flow chart illustrating a payload generation step of watermarking, where a secret key is retrieved or received at step 205. Information identifying the time stamp and a number identifying the device's serial number or location are retrieved or received at step 210. The payload is generated at step 215. The payload for digital cinema applications is at least 35 bits and 64 bits in the preferred embodiment of the present invention. The payload is then encoded for error correction and detection, eg, using BCH coding at step 220. The encoded payload is optionally duplicated in step 225. Optionally, a synchronization bit is then generated based on the key at 230. The synchronization bit is generated and used when using blind detection. This synchronization bit can also be generated and used when using semi-blind and non-blind detection schemes. If a synchronization bit has been generated, this synchronization bit is assembled with the sequence at step 235. The sequence is inserted into the payload in step 240 and the entire payload is then encrypted in step 245.

페이로드 생성은 삽입될 구체적인 정보를 비트열로 번역하는 것을 포함하는데, 이 비트열은 "페이로드"로 불린다. 삽입될 이 페이로드는 이후 에러 정정 및 검출 능력의 부가, 동기화 시퀀스, 암호화 및 이용가능한 공간에 따른 잠재적인 반복을 통해 확장된다. 페이로드 생성을 위한 예시적인 동작 시퀀스는:Payload generation involves translating the specific information to be inserted into a bit string, which is called a "payload." This payload to be inserted is then extended through the addition of error correction and detection capabilities, potential iterations along the synchronization sequence, encryption and available space. An example sequence of operations for payload generation is:

1. 삽입될 "정보"를 "원래의 페이로드"로 번역해라. 정보(타임스탬프, 프로젝터 ID 등)를 페이로드로 변환해라. 하나의 예가 디지털 씨네마 애플리케이션을 위한 35 비트 페이로드를 생성하기 위해 위에서 제공되었다. 본 발명의 예시적인 실시예에서, 페이로드는 64 비트를 갖는다. 원래의 페이로드로부터 "인코딩된 페이로드"를 계산하라, 인코딩된 페이로드는 에러 정정 및 검출 능력을 포함한다. 다양한 에러 정정 코드/방법/방식이 이용될 수 있다. 예컨대, BCH 코딩. BCH 코드(64, 127)는 수신된 비트 스트림에서 최대 10개의 에러까지 정정할 수 있다(즉, 대략적으로 7.87% 에러 정정률). 그러나, 인코딩된 페이로드가 수회 반복되는 경우, 상당한 수의 에러가 중복으로 인해 정정될 수 있다. 본 발명의 예시적인 실시예에서, 127-비트의 반복된 인코딩 페이로드는 12번 반복되며, 각 프레임에 삽입된 개별적인 비트에서 최대 30%의 에러까지 정정하는 것이 가능하다.1. Translate the "information" to be inserted into the "original payload". Convert the information (timestamp, projector ID, etc.) into payload. One example has been provided above to generate a 35 bit payload for a digital cinema application. In an exemplary embodiment of the invention, the payload has 64 bits. Calculate the "encoded payload" from the original payload, the encoded payload includes error correction and detection capability. Various error correction codes / methods / methods may be used. For example, BCH coding. The BCH codes 64 and 127 can correct up to 10 errors in the received bit stream (ie, approximately 7.87% error correction rate). However, if the encoded payload is repeated several times, a significant number of errors can be corrected due to redundancy. In an exemplary embodiment of the present invention, the 127-bit repeated encoding payload is repeated 12 times, and it is possible to correct up to 30% error in the individual bits inserted in each frame.

2. 이용가능한 공간에 따라, "인코딩된 페이로드를 복제하라"를 획득하기 위해 인코딩된 페이로드를 복제하라. 본 발명에서, 총 127(BCH 코딩)*12=1524비트에 대해 인코딩된 비트 각각을 12번 복제하라.2. Depending on the space available, duplicate the encoded payload to obtain "Duplicate encoded payload." In the present invention, duplicate each of the encoded bits 12 times for a total of 127 (BCH coding) * 12 = 1524 bits.

3. 키를 이용해서, "암호화된 페이로드"를 획득하기 위해 복제된 인코딩된 페이로드를 암호화하라; 암호화된 페이로드는 복제된 인코딩된 페이로드와 통상적으로 동일한 크기이다.3. Using the key, encrypt the duplicated encoded payload to obtain the "encrypted payload"; The encrypted payload is typically the same size as the duplicated encoded payload.

4. (선택적으로, 암호화하기 이전에) 동기화 비트를 생성하라 그리고 반복된 인코딩된 페이로드 내의 다양한 장소에서 삽입하라; 결과적인 시퀀스는 비디오 워터마크 페이로드이다. 예컨대, 2868 비트를 갖는 고정된 동기화 시퀀스를 계산하라. 이 시퀀스는 996비트의 하나의 전역 동기화 유닛(워터마크 칩의 헤더로서임) 및 156비트의 12개의 로컬 동기화 유닛(각 페이로드의 헤더에 대한 것임)으로 분할된다. 이 예에서, 다수의 비트가 동기화 비트로서 사용된다. 검출기에서 비-블라인드 방법을 이용하는 경우(여기서, 원래의 콘텐츠가 테스트 콘텐츠를 시간적으로 동기화하기 위해 이용됨), 동기화 비트는 등록을 국부적으로 조정하기 위해 여전히 매우 유용하다. 다시 말해서, 동기화 비트는 이와 달리 정보의 부가적인 중복을 위해 이용될 수 있는 공간을 취하며 이에따라 개별적인 비트 에러에 대한 강력함을 증가시킨다. 그러나, 동기화 비트는 추출된 정보의 정밀도 및 품질을 증가시키는데, 이는 더 적은 개별적인 비트 에러를 야기한다. 삽입된 동기화 비트의 수는 따라서 127개의 인코딩된 비트 내에서 최소의 수의 에러를 야기하는 최적 절충으로서 설정된다. 4. Generate synchronization bits (optionally before encryption) and insert them in various places within the repeated encoded payload; The resulting sequence is a video watermark payload. For example, calculate a fixed synchronization sequence with 2868 bits. This sequence is divided into one global synchronization unit of 996 bits (as the header of the watermark chip) and 12 local synchronization units of 156 bits (for the header of each payload). In this example, multiple bits are used as synchronization bits. When using a non-blind method at the detector, where the original content is used to synchronize the test content in time, the synchronization bit is still very useful for locally adjusting the registration. In other words, the synchronization bits otherwise take up space that can be used for additional redundancy of information and thus increase the robustness to individual bit errors. However, synchronization bits increase the precision and quality of the extracted information, which results in fewer individual bit errors. The number of inserted synchronization bits is thus set as the best compromise that causes the minimum number of errors within the 127 encoded bits.

5. 다음 비트를 순서대로 연결시킴으로써 워터마크 칩을 어셈블링하라:5. Assemble the watermark chip by concatenating the following bits in sequence:

■전역 동기화(996비트) 동기화 유닛.■ Global synchronization (996 bit) synchronization unit.

■암호화된 페이로드의 제1의 127비트, 이때 제1 로컬 동기화 유닛(156비 트)First 127 bits of the encrypted payload, where the first local synchronization unit (156 bits)

■암호화된 페이로드의 제2의 127비트, 이때 제2 로컬 동기화 유닛(156비트)The second 127 bits of the encrypted payload, where the second local synchronization unit (156 bits)

■...■ ...

■암호화된 페이로드의 최종 127비트, 이때 최종 로컬 동기화 유닛(156비트)Last 127 bits of encrypted payload, last local synchronization unit (156 bits)

워터마크칩(예컨대, 4392비트)은 통상적으로, 원래의 페이로드(예컨대, 64비트)보다 몇 차수 정도(a few orders of magnitude) 더 크다. 이는 잡음성 채널 상에서 송신하는 동안에 발생하는 에러로부터의 복구를 허용한다.Watermark chips (eg 4392 bits) are typically a few orders of magnitude larger than the original payload (eg 64 bits). This allows recovery from errors that occur during transmission on the noisy channel.

이제 도 3을 참조컨대, 이 도면은 워터마킹을 위한 계수의 선택을 도시하는 흐름도로서, 키가 단계(305)에서 검색 또는 수신된다. 페이로드(암호화되고, 동기화되고, 복제되고 인코딩됨)가 단계(310)에서 검색된다. 계수가 이후 단계(315)에서 키를 기초로 해서 디스조인트(disjoint) 세트로 분리된다. 페이로드 비트 및 키를 기초로 해서, 특성값 사이의 제약이 단계(320)에서 결정된다.Referring now to FIG. 3, this diagram is a flowchart illustrating the selection of coefficients for watermarking, where a key is retrieved or received at step 305. The payload (encrypted, synchronized, duplicated and encoded) is retrieved at step 310. The coefficients are then separated into disjoint sets based on the keys in step 315. Based on the payload bit and the key, a constraint between the characteristic values is determined at 320.

계수의 선택이 기저대역 또는 변환 영역에서 발생할 수 있다. 변환 영역 내에서 계수가 선택되어 두 개의 디스조인트 세트(C1 및 C2)로 그룹화된다. 키가 계수 선택을 랜덤화하기 위해 이용된다. 두 개의 세트 각각을 위한 특성 값, P(C1) 및 P(C2) 이 식별되는데, C1 및 C2에 대해 일반적으로 불변하도록 식별된다. 평균값(예컨대, 휘도), 최댓값, 및 엔트로피와 같은 다양한 이러한 특성이 식별될 수 있다.The choice of coefficients can occur in either the baseband or the transform domain. Coefficients are selected within the transform domain and grouped into two disjoint sets C1 and C2. The key is used to randomize the coefficient selection. The characteristic values, P (C1) and P (C2), for each of the two sets are identified, which are generally identified to be invariant for C1 and C2. Various such characteristics can be identified, such as mean values (eg, luminance), maximum values, and entropy.

삽입될 키 및 비트가 C1 및 C2의 특성값 사이의 관계 예컨대 P(C1)>P(C2)를 확립하기 위해 이용된다. 이는 제약 결정이라 불린다. 부가적인 강력함을 위해, 양의 값 'r'이 이용될 수 있어, P(C1)>P(C2)+r이 되도록 한다. 연관이 이미 적절할 수 있는데, 이 경우에 계수는 변경될 필요가 없다. 최악의 경우에, P(C2)는 P(C1)보다 상당히 더 클 수 있는데, 예컨대, P(C2)가 이미 P(C1)+t보다 더 큰 경우로서, t는 사전-결정된 값이거나 지각적인 모델에 따라 결정되며, 이 경우에 계수를 바꾸는 것은 가치가 없는데 그 이유는 지각적인 손상을 야기할 수 있기 때문이다. 그러나 대부분의 경우에, P(C1)이 P'1=P(C1)+p1이고, P(C2)가 P'2=P(C2)-p2가 되어(p1 및 p2는 양의 수임), P'1>P'2+r이 되도록 한다. The key and bit to be inserted are used to establish a relationship between the characteristic values of C1 and C2 such as P (C1)> P (C2). This is called a constraint decision. For additional strength, a positive value 'r' can be used, such that P (C1)> P (C2) + r. The association may already be appropriate, in which case the coefficients do not need to be changed. In the worst case, P (C2) can be significantly larger than P (C1), for example, if P (C2) is already greater than P (C1) + t, t is a predetermined value or perceptual Depending on the model, changing the coefficients in this case is not worth it because it can cause perceptual damage. In most cases, however, P (C1) is P'1 = P (C1) + p1 and P (C2) is P'2 = P (C2) -p2 (p1 and p2 are positive numbers), Let P'1> P'2 + r.

이제 도 4를 참조컨대, 이 도면은 단계(405)에서, 워터마킹의 계수 변경 단계를 도시하는 흐름도로서, 디스조인트 계수 세트가 수신 또는 검색된다. 디스조인트 계수 세트를 위한 특성 값이 단계(410)에서 측정된다. 특성값이 단계(415)에서 테스트되어 이 값 사이의 거리를 결정하는데, 이는 강력함의 측정치이다. 특성값이 임계거리(t) 내에 있는 경우, 단계(420)으로 나아가는데, 그 이유는 어떠한 계수 변경도 필요하지 않기 때문이다. 특성값이 임계거리(r)보다 더 큰 경우, 추가적인 테스트가 단계(425)에서 수행되어 특성값이 계수 변경을 수행하기 위해 허용된 일정한 최대 거리 내에 있는지를 결정한다. 특성값이 최대 거리 내에 있는 경우 단계(435)에서 계수가 변경되어 제약 연관을 만족시킨다. 특성값이 최대 거리 내에 있지 않은 경우 단계(430)에 의해 설명된 바와 같이 계수가 변경되지 않는다.Referring now to FIG. 4, this diagram is a flow chart illustrating a coefficient changing step of watermarking in step 405, where a disjoint coefficient set is received or retrieved. The characteristic value for the disjoint coefficient set is measured at step 410. The characteristic value is tested in step 415 to determine the distance between these values, which is a measure of strength. If the characteristic value is within the critical distance t, step 420 is reached, since no coefficient change is necessary. If the characteristic value is greater than the threshold distance r, an additional test is performed in step 425 to determine if the characteristic value is within a certain maximum distance allowed to perform the coefficient change. If the characteristic value is within the maximum distance, the coefficient is changed at step 435 to satisfy the constraint association. If the characteristic value is not within the maximum distance, the coefficient does not change as described by step 430.

본 발명의 워터마킹 방법은 원래의 콘텐츠에 "적응적"인데, 그 이유는 콘텐 츠에 대한 변경은 최소이나 비트값이 정확하게 검출될 것이라는 점을 보장하기 때문이다. 확산 스펙트럼 워터마킹 방법이 또한 원래의 콘텐츠에 대해 그러나 상이한 방식으로 적응적일 수 있다. 확산 스펙트럼 워터마킹 방법은 변화를 조절하기 위해 원래의 콘텐츠를 고려해서, 지각적인 손상을 야기하지 않게 한다. 이것은 본 발명의 방법과는 개념적으로 상이하며, 이는 콘텐츠의 일정 영역에 임의의 변화를 전혀 삽입하지 않도록 결정할 수 있는데, 그 이유는 이러한 변경이 지각할 수 있기 때문이 아니라, 원하는 연관이 이미 존재하거나 원하는 연관이 콘텐츠를 상당히 악화시키지 않고는 설정될 수 없기 때문이다. 아래에서 보여지는 바와 같이, 본 발명의 방법은 그러나, 비트가 정확하게 검출될 것이라는 것을 보장하기 위해 그리고 지각적인 손상을 최소화하기 위해 적응될 수 있다.The watermarking method of the present invention is " adaptive " to the original content, since a change to the content ensures that the minimum or bit value will be detected correctly. Spread spectrum watermarking methods may also be adaptive to the original content but in a different manner. Spread-spectrum watermarking methods take the original content into account to control the change, so as not to cause perceptual damage. This is conceptually different from the method of the present invention, which can determine not to insert any changes in any area of the content at all, not because these changes can be perceived, but because the desired association already exists or This is because the desired association cannot be established without significantly deteriorating the content. As shown below, the method of the present invention, however, can be adapted to ensure that the bits will be detected correctly and to minimize perceptual damage.

본 발명의 방법은 최소량의 왜곡을 야기해서 비트가 강력하게 삽입되는 것을 보장하며, 왜곡이 너무 심각한 경우에는 포기하기 때문에, 동일한 왜곡 및 비트 속도에 대해 확산 스펙트럼 방법보다 더 큰 강력함을 야기한다.The method of the present invention results in a greater amount of distortion than the spread spectrum method for the same distortion and bit rate since it causes the least amount of distortion to ensure that the bits are inserted strongly and gives up if the distortion is too severe.

기저대역 영역에서, 본 발명의 일 실시예는 각 프레임 내의 픽셀을 상부 및 하부로 분리한다. 상부/하부의 휘도는 삽입될 비트에 따라서 증가 또는 감소된다. 각 프레임은 중심점으로부터 공간 영역에서 네 개의 직사각형으로 분할된다. 프레임을 네 개의 직사각형으로 분할하는 것은 프레임당 최대 4비트까지의 저장을 허용한다. 이 방법은 다음을 포함한다:In the baseband region, one embodiment of the present invention separates the pixels within each frame into top and bottom. The brightness of the top / bottom is increased or decreased depending on the bit to be inserted. Each frame is divided into four rectangles in the space area from the center point. Dividing the frame into four rectangles allows storage up to 4 bits per frame. This method includes:

· 두 개의 계수(C1 및 C2) 세트를 형성하기 위해, 픽셀값을 프레임의 상부 및 하부로 그룹화하는 것.Grouping pixel values into the top and bottom of the frame to form two sets of coefficients C1 and C2.

· 휘도를 측정하는 것 즉, P(C1)은 C1 내의 모든 계수의 평균이고 C2에 대해서도 동일함.Measuring luminance, that is, P (C1) is the average of all coefficients in C1 and the same for C2.

· 제약 예컨대, P(C1)>P(C2)+r을 설정하기 위해 필요한 경우에만, 그리고 최소의 방식으로 픽셀값을 변경하는 것, 여기서 r은 일반적으로 양의 값이다.Changing the pixel value only if necessary to set constraints, eg P (C1)> P (C2) + r, and in a minimal manner, where r is generally a positive value.

본 발명의 이 실시예에서, 워터마킹 삽입 모듈은 단지 이미지의 웨이블릿 변환의 최저 해상도 계수에 액세스한다. 픽셀 크기 2048(너비) ×856(높이) 픽셀을 갖는 비디오 프레임에 대해, 해상도 레벨 5에서 각 부대역(즉, LL, LH, HL, 및 HH)에 대해 64×28=1728개의 계수, 또는 1728*4=6912가 존재한다. 이러한 계수, 이러한 계수의 부세트만이 비디오 워터마크 삽입을 위해 이용된다. 두 개의 비-제한적인 방법이 프레임 내에서 선택된 계수 그룹을 이용해서 아래에서 설명된다.In this embodiment of the invention, the watermarking insertion module only accesses the lowest resolution coefficient of the wavelet transform of the image. For video frames with a pixel size of 2048 (width) x 856 (height) pixels, 64 × 28 = 1728 coefficients, or 1728, for each subband (ie, LL, LH, HL, and HH) at resolution level 5 * 4 = 6912 exists. Only these coefficients, a subset of these coefficients, are used for video watermark embedding. Two non-limiting methods are described below using the coefficient group selected within the frame.

제1 방법에서, LL 계수(근사 계수로도 불림)만이 비디오 워터마크 삽입을 위해 이용된다. LL 계수 매트릭스(64×28)가 32×14 각각의 중심점(C1, C2, C3 및 C4)으로부터 네 개의 타일/부분으로 분할된다. 삽입될 비트 및 키에 따라서, 일정한 연관이 네 부분, LLa(상부 좌측 구역), LLb(상부 우측), LLc(하부 우측), 및 LLd(하부 좌측)의 각각의 계수 사이에서 생성되는데, 각 부분의 계수를 증가/감소시킴으로써 생성되어, 일정한 제약이 충족되게 한다. 네 개의 직사각형 타일/부분의 각각이 세 개의 컬러 채널 각각에 대해 286 및 1728 계수 사이에서 가질 수 있다. 구역(LLa 내지 LLd) 사이의 전이에서 워터마크를 평활화시키기 위해 (그리고 워터마크의 가시도를 제한하기 위해), 전이 구역이 더 낮아진 강도를 가지고 비-워터마킹되거나 워터마킹된 채로 남겨질 수 있다.In the first method, only LL coefficients (also called approximation coefficients) are used for video watermark embedding. The LL coefficient matrix 64x28 is divided into four tiles / parts from the 32x14 center points C1, C2, C3 and C4. Depending on the bits and keys to be inserted, a constant association is created between the respective coefficients of four parts, LLa (top left section), LLb (top right), LLc (bottom right), and LLd (bottom left), each part It is created by increasing / decreasing the coefficient of, so that certain constraints are met. Each of the four rectangular tiles / portions may have between 286 and 1728 coefficients for each of the three color channels. To smooth the watermark (and to limit the visibility of the watermark) in the transition between zones LLa to LLd, the transition zone can be left non-watermarked or watermarked with lower intensity.

제약의 예는: P(C1)+P(C2)>P(C3)+P(C4)일 수 있다. 평균 휘도와 같은 선형 특성에 대해, 이 수학식은 단지 4개 대신 단지 2개의 구역을 갖는 경우 P(C1 ∪ C2)>P(C3 ∪ C4)으로 기록될 수 있으나, 이는 모든 계수의 최댓값과 같은 비-선형 특성에 대해서는 일반적으로 참이 아니다. 삽입될 비트 및 이용된 키에 따라서 수 개의 상이한 가능한 제약이 존재한다.An example of a constraint may be: P (C1) + P (C2)> P (C3) + P (C4). For linear characteristics such as average luminance, this equation can be written as P (C1 ∪ C2)> P (C3 ∪ C4) if it has only two zones instead of just four, but this is equal to the maximum value of all coefficients. It is generally not true about the linear characteristic. There are several different possible constraints depending on the bits to be inserted and the keys used.

계수의 네 개의 타일로의 분리의 하나의 이점은 제약을 야기하는 것을 허용하는 것 이외에, 매우 낮은 공간 주파수의 이용 또한 허용한다는 것이다. 위에서 설명된 바와 같이, 이러한 주파수는 기하학적인 어택에 강력한 한편, 프레임의 전역 특성만을 고려하는 방법보다 더 높은 수의 비트를 저장하는 것을 허용한다.One advantage of separating the coefficients into four tiles is that in addition to allowing for constraints, it also allows the use of very low spatial frequencies. As described above, this frequency is robust to geometric attacks, while allowing for storing a higher number of bits than a method that only considers the global characteristics of the frame.

제2 방법에서 계수(LH 및 HL)는 비디오 워터마크 삽입을 위해 이용된다. 제약을 삽입하기 위해 이러한 계수를 조작하기 위한 다양한 방식이 존재한다. 최저 해상도 레벨에서 계수(LH)와 계수(HL) 사이에 제약을 삽입함으로써 비트가 삽입된다. 예컨대, 제약은 모든 x, y에 대해, 프레임(f) 내에서 계수 LH(x,y,f)>HL(x,y,f)이 되도록 존재할 수 있다. 이러한 제약이 종종 너무 강해서 실제로는 문자 그대로 적용되지 않음에 따라, 계수는 연관이 전역으로 적용되도록 조작될 수 있다. 예컨대, In the second method the coefficients LH and HL are used for video watermark embedding. There are various ways to manipulate these coefficients to insert constraints. Bits are inserted by inserting constraints between the coefficients LH and HL at the lowest resolution level. For example, a constraint may exist for all x, y such that the coefficient LH (x, y, f)> HL (x, y, f) in frame f. As these constraints are often too strong to actually apply literally, the coefficients can be manipulated so that the association is applied globally. for example,

Figure 112008015179353-PCT00001
Figure 112008015179353-PCT00001

이 되도록 그것은 존재할 수 있다.So that it can exist.

제2 연관이 선형이 아니고, 파이너 그레인(finer grain) 그러나 더 복잡한 계수 삽입을 허용한다는 것이 주목되어야 한다. 이는 변화를 계수에 허용해서, 만약 있다면, 변화에 더 민감한 영역이 그만큼 변하지 않게 한다.It should be noted that the second association is not linear and allows fine grain but more complex coefficient insertion. This allows the change to be counted so that if there is, the area more sensitive to the change does not change that much.

픽셀값을 변경하는 대신에 이 방법에서, 비교적 적은 수의 계수(64×28개의 LL 계수)가 프레임의 휘도를 변화시키도록 변경된다는 것이 주목되어야 한다. 이는 워터마크 삽입을 위해 큰 이점인데, 제한된 계산 자원을 구비하며 비용-효과적인 그리고 실시간 워터마킹 기능을 필요로 하는 애플리케이션에서 특히 그러하다. It should be noted that in this method instead of changing the pixel values, a relatively small number of coefficients (64x28 LL coefficients) are changed to change the luminance of the frame. This is a huge advantage for watermark embedding, especially in applications that have limited computational resources and require cost-effective and real-time watermarking capabilities.

수 개의 더 많은 방법이 계수 세트에 따라 예견될 수 있는데, 이는 단지 하나의 프레임 내의 계수 도는 연속 프레임으로부터의 계수, 특정된 특성, 실시하기 위한 연관 유형 등을 이용할 수 있다. 일반적으로, 가장 실행가능한 방법은 특성값의 정렬이 콘텐츠에 대한 변경 이후에 일반적으로 보존된다는 의미에서, 대개 불변하는 특성을 갖는 계수 세트를 이용할 것이다.Several more methods can be anticipated according to the coefficient set, which can utilize coefficients within one frame or coefficients from consecutive frames, specified characteristics, association types to implement, and the like. In general, the most viable method will usually use a set of coefficients with invariant characteristics in the sense that the alignment of characteristic values is generally preserved after a change to the content.

계수 변경을 위해, 일 실시예에서 본 발명은 두 개의 계수(C1={c11,...,c1N} 및 C2={c21,...,c2N}) 세트를 이용하고, 이들의 값을 변경한다. 계수(cij)의 값은 변경 전후에 각각 v(cij) 및 v'(cij)로 표시된다.To change the coefficients, in one embodiment the present invention uses two sets of coefficients C1 = {c11, ..., c1N} and C2 = {c21, ..., c2N} and changes their values. do. The values of the coefficients cij are denoted by v (cij) and v '(cij) before and after the change, respectively.

위에서 검토된 바와 같이, 두 개보다 더 많은 계수 세트가 더 까다로운 연관을 위해 이용될 수 있다. 또한 단지 하나의 계수 세트를 이용하는 것도 가능하다. 일반성의 손실없이, P(C1)>P(C2)+r이 되도록 연관을 설정하는 것이 바람직할 수 있는데, r은 연관의 강력함을 조정하는 값이다. As discussed above, more than two coefficient sets can be used for more demanding associations. It is also possible to use only one coefficient set. Without loss of generality, it may be desirable to set the association such that P (C1)> P (C2) + r, where r is a value that adjusts the strength of the association.

함수(P)가 예컨대 최대인 경우, 변화를 최소화하기 위해 단지 다음과 같은 방식으로 가장 강한 계수인 C1 및 C2를 조작하라.If the function P is at its maximum, for example, manipulate the strongest coefficients C1 and C2 only in the following manner to minimize the change.

Figure 112008015179353-PCT00002
Figure 112008015179353-PCT00002

위에서 함수(P)는 강하게 비-선형인데 즉, 특성은 계수값의 함수로서 평활하게 변하지 않는다. 이 방법은 유리한데 그 이유는 (변화가 강해야 할 수 있음에도)세트당 단지 하나의 계수를 변경함으로써 비트의 삽입을 허용하기 때문이다.In the above, the function P is strongly non-linear, ie the property does not vary smoothly as a function of the coefficient value. This method is advantageous because it allows the insertion of bits by changing only one coefficient per set (although the change may have to be strong).

더 강력하게 만들 수 있는 이러한 '최대' 방법의 확장은 최댓값뿐만 아니라 N개의 가장 강한 값을 바꾸어서(N은 통상적으로 계수 세트의 크기보다 상당히 작음), 콘텐츠에 대한 조작 이후에 연관이 정확하게 디코딩되는 기회를 최대화한다. 수 가지의 그밖의 변형이 이 기법에 가능하다는 것이 이해된다.An extension of this 'maximum' method, which can make it more powerful, replaces not only the maximum but also the N strongest values (N is typically significantly smaller than the size of the coefficient set), giving the opportunity to correctly decode the association after manipulation on the content. Maximize It is understood that several other variations are possible with this technique.

다른 한편, 함수(P)가 계수의 선형 특성인 경우에(예컨대, 평균), 변화는 각 세트 내의 모든 계수 상에서 임의로 분포될 수 있다. 예컨대, 연관을 설정하기 위해 On the other hand, if the function P is a linear characteristic of the coefficients (e.g., mean), the change can be distributed randomly over all coefficients in each set. For example, to establish an association

Figure 112008015179353-PCT00003
Figure 112008015179353-PCT00003

이 되도록 계수의 평균값을 변화시키는 것이 바람직하다고 가정하는데, 이는 변화가 각 계수 상에서 동일하게 분포될 수 있는 경우로서(C1에 속하는 계수에 대해서는 양으로 그리고 C2에 속하는 계수에 대해서는 음으로임), It is assumed that it is desirable to change the mean value of the coefficients so that the change can be equally distributed over each coefficient (positive for coefficients belonging to C1 and negative for coefficients belonging to C2),

Figure 112008015179353-PCT00004
Figure 112008015179353-PCT00004

를 야기하며, c2j에 대해서도 마찬가지이다. 연관이 이미 유지되고 있는 경우,

Figure 112008015179353-PCT00005
이며, 이 경우 계수는 변경될 필요가 없 다., And the same for c2j. If the association is already maintained
Figure 112008015179353-PCT00005
In this case, the coefficient does not need to be changed.

위에서 설명된 바와 같이, 기본 방법은 상이한 특성을 이용함으로써 더 많은 연관을 통합하도록 확장될 수 있다. 예컨대, 2비트를 인코딩하는 것을 허용하는, 두 세트 사이에 네 개의 연관 조합을 구비하기 위해, '최대' 및 '평균' 방법을 함께 고려하자. 이때, 다음 연관이 실시될 수 있다:As described above, the basic method can be extended to incorporate more associations by using different characteristics. For example, consider the 'maximum' and 'average' methods together to have four associative combinations between the two sets, allowing encoding of two bits. At this time, the following association may take place:

Figure 112008015179353-PCT00006
Figure 112008015179353-PCT00006

또한, 위에서 설명된 바와 같이, 하나의 계수 세트만이 이용되어야 할 수 있는데, 이 경우에 연관은 고정된 또는 사전-결정된 값에 대해 설정된다. 예컨대, 연관은 최대 또는 평균인 C1이 일정값보다 더 높도록 실시될 수 있다. 또 하나의 경우에, 키가 의사-랜덤하게 선택하도록 이용되어 키에 따라서 '최대' 또는 '평균' 연관을 실시하게 할 수 있는데, 이는 알고리즘의 보안을 상당히 향상시킨다.In addition, as described above, only one set of coefficients may need to be used, in which case the association is established for a fixed or predetermined value. For example, the association may be made such that the maximum or average C1 is higher than a certain value. In another case, the key can be used to pseudo-randomly select to make 'max' or 'average' association depending on the key, which significantly improves the security of the algorithm.

위에서 설명된 접근법은 마스킹 (지각적인) 모델을 통합할 수 있는데, 이 모델은 워터마크의 최소의 지각적인 영향을 야기하는 이미지의 각 구역 내에 워터마크의 강도를 분포시키는 것을 허용한다. 이러한 모델은 또한 조작이 지각적인 손상없이 연관을 실시하기 위해 가능한지를 결정할 수 있다. 다음은 디지털 씨네마 프로젝터에서 실시간 워터마킹하는 상황에서 비디오 콘텐츠를 위해 워터마킹 모델을 통합하기 위한 비-제한적인 방식을 설명한다.The approach described above can incorporate a masking (perceptual) model, which allows to distribute the intensity of the watermark within each area of the image causing a minimal perceptual impact of the watermark. This model can also determine if manipulation is possible to make the association without perceptual damage. The following describes a non-limiting way to integrate a watermarking model for video content in the context of real-time watermarking in a digital cinema projector.

이미지를 위한 두 가지 주요한 마스킹 효과가 존재한다: 텍스쳐 마스킹 및 밝기 마스킹. 나아가, 비디오는 제3 마스킹 효과로부터 이익을 얻는다: 시간적 마스킹.There are two main masking effects for images: texture masking and brightness masking. Furthermore, the video benefits from the third masking effect: temporal masking.

제한된 계산 자원을 가지나 실시간 워터마킹을 필요로 하는 디지털 씨네마와 같은 일부 애플리케이션에서, 예컨대, 해상도 레벨 5에서, 최저 해상도 레벨의 부대역 계수(LL, LH, HL 및 HH)를 단지 이용하는 것이 바람직할 수 있다. 최종 세 가지 유형의 계수는 텍스쳐의 잠재적인 표시자인 한편 LL은 밝기의 표시자이다. 그러나, 대응 해상도는 낮으며, 이 해상도에서 텍스쳐 마스킹 효과는 상당하지 않다. 이를 예시하기 위해, 완전한 해상도에서의 비디오 프레임과 해상도 레벨 5에서 계수로부터 재구성된 동일한 비디오 프레임을 비교해 보자. 도 5를 참조하자. 대부분의 텍스쳐가 이 해상도에서 상실되는 것으로 보인다. 그러므로, 레벨 5를 위한 LH, HL 및 HH 부대역 계수는 텍스쳐의 조악한 표시자이며, 텍스쳐 마스킹 측정에 이용되지 않을 것이다.In some applications, such as digital cinema, which have limited computational resources but require real-time watermarking, for example at resolution level 5, it may be desirable to simply use the subband coefficients (LL, LH, HL and HH) of the lowest resolution level. have. The final three types of coefficients are potential indicators of texture, while LL is an indicator of brightness. However, the corresponding resolution is low and the texture masking effect is not significant at this resolution. To illustrate this, let's compare a video frame at full resolution with the same video frame reconstructed from the coefficients at resolution level 5. See FIG. 5. Most of the texture seems to be lost at this resolution. Therefore, the LH, HL and HH subband coefficients for level 5 are coarse indicators of the texture and will not be used for texture masking measurements.

그러나, 시간적인 마스킹은 상당히 양호한 정밀도를 가지고 여전히 추정될 수 있는데, 그 이유는 움직임이 비디오의 다소 큰 영역에 적용될 수 있기 때문이며, 이 영역은 따라서 저 주파수이다. 시간적인 마스킹은 현재 프레임의 계수로부터 이전 프레임의 계수를 공제함으로써 측정될 수 있다. C(f,c,l,b,x,y)는 프레임(f), 채널(즉, 컬러 성분)(c), 해상도 레벨(l), 부대역(b)(계수 LL, LH, HL 및 HH에 대해 b = 0 내지 3), 위치(x,y)를 표시한다. 따라서, 두 개의 연속 프레임 상의 동일 유형의 계수 사이의 절대차의 합은 시간적인 변화의 유효한 측정치이다:However, temporal masking can still be estimated with fairly good precision, since motion can be applied to a rather large area of video, which is therefore low frequency. Temporal masking can be measured by subtracting the coefficient of the previous frame from the coefficient of the current frame. C (f, c, l, b, x, y) is frame f, channel (i.e. color component) c, resolution level l, subband b, coefficients LL, LH, HL and B = 0 to 3), position (x, y) for HH. Thus, the sum of the absolute differences between coefficients of the same type on two consecutive frames is a valid measure of temporal change:

Figure 112008015179353-PCT00007
Figure 112008015179353-PCT00007

소정의 프레임(f), 해상도 레벨(l=5)에 대해, T(f,c,l,b,x,y)는 모든 위치(x,y)에 대해 그리고 컬러 채널의 각 색에 대해 측정된다(통상적으로 세 개의 컬 러 채널/성분이 존재한다). 수 개의 채널이 존재하는 경우, 모든 채널에 걸쳐 T(f,c,l,b,x,y)의 평균값을 취하는 것이 유리할 수 있다. 이때 각 위치(x,y)에 대해, T(f,c,l,b,x,y)의 값은 임계(t)와 비교되고, 이 위치에서의 계수는 값이 t보다 더 높은 경우에만 변경된다. 실험적으로, t에 대한 양호한 값은 30이다. 계수가 바뀌는 경우, 일정량의 변화가 종래 기술에서 알려진 바와 같이, 휘도의 함수로서 이루어진다.For a given frame f, resolution level l = 5, T (f, c, l, b, x, y) is measured for all positions (x, y) and for each color of the color channel (Typically there are three color channels / components). If there are several channels, it may be advantageous to take the average value of T (f, c, l, b, x, y) over all channels. At this time, for each position (x, y), the value of T (f, c, l, b, x, y) is compared with the threshold t, and the coefficient at this position is only if the value is higher than t. Is changed. Experimentally, a good value for t is 30. When the coefficient changes, a certain amount of change is made as a function of brightness, as is known in the art.

도 6은 D-씨네마 서버(매체 블록) 내의 워터마킹의 블록도이다. 매체 블록(600)은 적어도 워터마크 생성 및 워터마크 삽입을 포함해서 워터마킹을 수행하기 위해, 하드웨어, 소프트웨어, 펌웨어 등으로 구현될 수 있는 모듈을 구비한다. 모듈(605)이 페이로드 생성을 포함해서 워터마크 생성을 수행한다. 인코딩된 워터마크(610)가 이후 워터마크 삽입 모듈(615)에 포워딩되는데, 이 모듈은 J2K 디코더(625)로부터 이미지의 계수를 수신하고 이후 웨이블릿 계수(620)를 선택 및 변경하며, 최종적으로, 변경된 계수를 J2K 디코더(625)에 반환한다.6 is a block diagram of watermarking in a D-cinema server (media block). The media block 600 includes a module that can be implemented in hardware, software, firmware, etc. to perform watermarking, including at least watermark generation and watermark insertion. Module 605 performs watermark generation, including payload generation. The encoded watermark 610 is then forwarded to the watermark embedding module 615, which receives coefficients of the image from the J2K decoder 625 and then selects and changes the wavelet coefficients 620, and finally, The modified coefficients are returned to the J2K decoder 625.

위에서 설명된 바와 같이, 워터마크 생성 모듈은 페이로드를 생성하는데, 이 페이로드는 직접 삽입될 비트열이다. 워터마크 삽입 모듈은 페이로드를 입력으로서 취하고, 이미지의 웨이블릿 계수를 J2K 디코더로부터 수신하며, 계수를 선택 및 변경하고 최종적으로, 변경된 계수를 J2K 디코더에 반환한다. J2K 디코더는 계속해서 J2K 이미지를 디코딩하고 압축해제된 이미지를 출력한다. 대안적인 설계로서, 워터마크 생성 모듈 및/또는 워터마크 삽입 모듈은 J2K 디코더에 통합될 수 있다.As described above, the watermark generation module generates a payload, which is a bit string to be inserted directly. The watermark embedding module takes the payload as input, receives the wavelet coefficients of the image from the J2K decoder, selects and changes the coefficients, and finally returns the changed coefficients to the J2K decoder. The J2K decoder continues to decode the J2K image and output the decompressed image. As an alternative design, the watermark generation module and / or watermark embedding module may be integrated into the J2K decoder.

워터마크 생성 모듈은 페이로드 내의 타임스탬프를 갱신하기 위해 주기적으 로(예컨대, 5분마다) 호출될 수 있다. 그러므로, "오프라인"으로 불릴 수 있는데, 즉, 워터마크 페이로드는 D-씨네마 서버 내에서 미리 생성될 수 있다. 임의의 경우에, 이 모듈의 계산 요건은 비교적 낮다. 그러나, 워터마크 삽입은 실시간으로 수행되어야 하며 이 모듈의 성능은 중요하다.The watermark generation module may be called periodically (eg, every 5 minutes) to update the time stamp in the payload. Therefore, it may be referred to as "offline", that is, the watermark payload may be generated in advance in the D-cinema server. In any case, the computational requirements of this module are relatively low. However, watermark embedding should be done in real time and the performance of this module is important.

비디오 워터마크 삽입은 원래의 콘텐츠가 고려될 수 있는 방식으로 다양한 레벨의 복잡도를 가지고 행해질 수 있다. 더 많은 복잡도는 소정의 충실도 레벨에 대한 부가적인 강력함 또는 동일한 강력함 레벨에 대한 더 많은 충실도를 의미할 수 있다. 그러나, 이는 계산량면에서 부가적인 비용을 수반한다.Video watermark embedding can be done with varying levels of complexity in a way that original content can be considered. More complexity may mean additional fidelity for a given fidelity level or more fidelity for the same fidelity level. However, this involves additional costs in terms of computation.

비디오 워터마크 삽입에 필요한 동작의 수를 추정하기 전에, 다음의 기본 계산 단계 중 임의의 단계가 하나의 동작으로 고려된다는 것이 주목된다:Before estimating the number of operations required for embedding a video watermark, it is noted that any of the following basic calculation steps are considered as one operation:

·계수의 비트 이동· Bit shift of coefficient

·두 개의 계수의 부가 또는 공제Addition or subtraction of two coefficients

·두 개의 정수의 곱셈Multiplication of two integers

·두 개의 계수의 비교Comparison of two coefficients

·룩업 테이블 내의 값을 액세스Access values in the lookup table

다음 예에서, C(f,c,l,b,x,y) 및 C'(f,c,l,b,x,y)이 각각, 프레임(f)을 위한 컬러 채널(c)을 위한 웨이블릿 변환 레벨(l)에서 주파수 대역(b(0:LL, 1:LH, 2:HL, 3:HH))을 위한 위치(x(너비)), y(높이))에서 원래의 계수 및 워터마킹된 계수이다. 나아가, N이 변경될 필요가 있는 최저 해상도 레벨에서 계수의 수라는 것이 전제된다.In the following example, C (f, c, l, b, x, y) and C '(f, c, l, b, x, y) are respectively used for the color channel c for frame f. Original coefficient and water at position (x (width)), y (height) for frequency band b (0: LL, 1: LH, 2: HL, 3: HH) at wavelet transform level l Marked coefficient. Furthermore, it is assumed that N is the number of coefficients at the lowest resolution level that needs to be changed.

간략하게 하기 위해, 계수값은 비디오 워터마크 삽입 동안에 증가된다는 것이 다음에서 전제된다. 그러나, 수학식에서 부가는 공제에 의해 동일하게 대체될 수 있다는 것이 주목된다.For the sake of simplicity, it is assumed in the following that the coefficient value is increased during video watermark embedding. However, it is noted that the addition in the equation can be equally replaced by the subtraction.

각 계수가 동일한 양만큼 변하는 경우, 따라서, 계수당 단지 하나의 동작이 존재한다:If each coefficient varies by the same amount, then there is only one action per coefficient:

Figure 112008015179353-PCT00008
Figure 112008015179353-PCT00008

여기서, 값(a)은 상수이다. 하나의 부가적 비교 동작이 변경된 계수의 오버플로우를 체크하기 위해 요구될 수 있다. 따라서, 총 계산 요건은 2*N이다.Here, the value a is a constant. One additional comparison operation may be required to check for overflow of the changed coefficients. Therefore, the total calculation requirement is 2 * N.

그러나, 이상은 효과적인 방법이 아니다. 실제로, 상수값(a)이 너무 크면, 워터마크는 가시적일 것이다. 그러므로, 값(a)은 보수적(conservative)이어야 하는데 즉, 워터마크가 가시적인 결함을 결코 야기하지 않도록 충분히 작아야 하나, 다른 한편 비디오 워터마크가 너무 보수적인 경우, 심한 어택을 견디지 못할 수 있다. LL 부대역 계수는 국부적인 휘도에 대응하는 한편, LH, HL 및 HH 계수는 이미지 변화, 또는 "에너지"에 대응한다. 인간의 눈이 밝은 영역(더 강한 LL 계수)에서 휘도에서의 변화에 덜 민감하다는 것이 잘 알려져 있다. 이는 또한 변화 방향에 따라서, 계수(LH, HL 및 HH)에 의존하는, 강한 변화를 갖는 영역에서의 변화에 덜 민감하다. 이는 그러나 신중하게 고려되어야 한다: LH 및 HL 계수는 조심스럽게 조작되어야 하는, 에지와 같은 지각적으로 상당한 변화에 대응할 수 있다. However, the above is not an effective method. In fact, if the constant value a is too large, the watermark will be visible. Therefore, the value a should be conservative, i.e. small enough so that the watermark never causes a visible defect, on the other hand, if the video watermark is too conservative, it may not withstand severe attack. The LL subband coefficients correspond to local luminance, while the LH, HL and HH coefficients correspond to image changes, or “energy”. It is well known that the human eye is less sensitive to changes in luminance in bright areas (stronger LL coefficients). It is also less sensitive to changes in areas with strong changes, depending on the coefficients LH, HL and HH, depending on the direction of change. This must however be carefully considered: LH and HL coefficients can counter perceptually significant changes, such as edges, which must be carefully manipulated.

그럼에도불구하고, 적어도 계수(LL 및 HH)에 대해, 계수에 비례하는 변경을 이루는 것이 유리할 수 있다. 간단한 비례적인 변경은 원래의 계수를 복사함으로 써, 복사된 계수를 비트-이동함으로써, 그리고 비트-이동된 계수를 부가 또는 공제함으로써 행해질 수 있는데, 예컨대Nevertheless, it may be advantageous to make a change proportional to the coefficient, at least for the coefficients LL and HH. Simple proportional changes can be made by copying the original coefficients, by bit-shifting the copied coefficients, and by adding or subtracting the bit-shifted coefficients, for example

Figure 112008015179353-PCT00009
Figure 112008015179353-PCT00009

n을 위한 통상적인 값은 7 또는 8이다. n = 7 또는 8에 대해, 계수는 자신의 원래 크기의 1/128 또는 1/256만큼 변경된다. 예컨대, 0 내지 255의 크기 상에서 128의 평균 휘도를 갖는 이미지에 대해, 계수 변경의 영향은 1의 휘도의 변화이다. 이러한 변화는 통상적으로 가시적인 결함을 생성하지 않는다. Typical values for n are 7 or 8. For n = 7 or 8, the coefficient is changed by 1/128 or 1/256 of its original size. For example, for an image having an average brightness of 128 on a size from 0 to 255, the effect of the coefficient change is a change in brightness of one. This change typically does not produce visible defects.

계수당 두 가지 동작이 존재한다. 가능한 오버플로우 체킹에서, 총 계산 요건은 3*N인데, N은 조작된 계수의 수이다.There are two operations per coefficient. In possible overflow checking, the total calculation requirement is 3 * N, where N is the number of manipulated coefficients.

매우 낮은 휘도를 갖는 프레임에 대해 워터마크가 충분히 강하게 삽입된다는 것을 확실하게 하기 위해 최소 변화 a를 부과하는 것이 가능하다는 것이 또한 주목된다. 이 경우에 계수당 세 개의 동작이 존재한다:

Figure 112008015179353-PCT00010
It is also noted that it is possible to impose a minimum change a to ensure that the watermark is inserted sufficiently strong for a frame with very low luminance. In this case there are three actions per coefficient:
Figure 112008015179353-PCT00010

부가적으로, 다음의 지각적인 특징이 계수 상에서 적응적인 변화를 만들기 위해 이용될 수 있다:In addition, the following perceptual features can be used to make adaptive changes in coefficients:

·시간적인 상황. 시간적인 마스킹은 시간적인 활성과 관련되는데, 이 활성은 이전의, 현재의 그리고 후속하는 프레임 내의 계수를 이용함으로써 가장 잘 추정되고, 본 발명은 시간적인 활성을 측정하기 위해 선행하는 그리고 현재의 프레임의 계수만을 이용한다. 높은 시간적인 활성은 더 강한 워터마크를 허용한다. 시간 적인 모델링을 위한 추정된 계산 복잡도는 약 4이다.Temporal situation. Temporal masking is related to temporal activity, which is best estimated by using coefficients in previous, current and subsequent frames, and the present invention is directed to determining the temporal activity of the preceding and current frames. Use only coefficients. High temporal activity allows for stronger watermarks. The estimated computational complexity for temporal modeling is about four.

·텍스쳐 상황. 각 계수(C(f,c,b,l,x,y))에 대해, 그밖의 부대역 내에서 K 부가적인 대응 계수가 4K2 동작의 추정된 복잡도를 가지고, 텍스쳐 및 편평도를 모델링하기 위해 이용될 수 있다.Texture situation. For each coefficient C (f, c, b, l, x, y), in order to model texture and flatness, the K additional correspondence coefficients within the other subbands have an estimated complexity of 4K 2 motion. Can be used.

·휘도 상황. 룩업 테이블이 계수(C(f,c,b,l,x,y))에서 휘도에 따라 가중치를 결정하기 위해 이용될 수 있다. 추정된 동작은 B로서, B는 휘도값을 나타내는 비트의 수이다.Brightness situation. A lookup table may be used to determine weights according to luminance in coefficients C (f, c, b, l, x, y). The estimated operation is B, where B is the number of bits representing the luminance value.

모든 지각적인 특징은 계수의 변경을 결정하기 위해 가중 및 상쇄(balance)될 수 있다:All perceptual features can be weighted and balanced to determine changes in coefficients:

Figure 112008015179353-PCT00011
Figure 112008015179353-PCT00011

여기서, W는 모든 지각적인 특징을 조합하는 가중치이다.Where W is a weight that combines all perceptual features.

워터마크 삽입 복잡도의 대략적인 추정치, 편의상 복잡도는 위에서 설명된 바와 같이 동작의 개수 면에서 추정된다. 동작의 개수는 동작이 정의되는 정확한 방식, 구현된 워터마킹 및 마스킹 절차 등에 따라 변할 수 있다는 것이 주목되어야 한다. 그럼에도 불구하고, (이미지 크기의 1/1000 정도의) 본 발명의 방법에 의해 액세스될 필요가 있는 비교적 적은 수의 계수, 및 계수당 비교적 적은 수의 동작이 제공되는 경우, 본 발명의 방법은 강력하며 계산상 실행가능하다는 결론이 나올 수 있다. A rough estimate of the watermark embedding complexity, for convenience the complexity is estimated in terms of the number of operations as described above. It should be noted that the number of operations may vary depending on the exact manner in which the operations are defined, the watermarking and masking procedures implemented, and the like. Nevertheless, the method of the present invention is robust when a relatively small number of coefficients that need to be accessed by the method of the present invention (about 1 / 1000th of the image size) and a relatively small number of operations per coefficient are provided. It can be concluded that the calculation is feasible.

이제 도 7을 참조컨대, 워터마크 검출은 일반적으로 네 단계로 구성된다: 비 디오 준비(705), 특성값의 추출 및 계산(710), 비트값의 검출(715), 및 삽입된 (워터마크) 정보의 디코딩(720). 테스트가 725에서 수행되어 워터마크 정보가 성공적으로 디코딩되었는지를 결정한다. 워터마크 정보가 성공적으로 디코딩된 경우 프로세스가 완성된다. 워터마크 정보가 성공적으로 디코딩되지 않은 경우, 위 프로세스가 반복될 수 있다.Referring now to FIG. 7, watermark detection generally consists of four steps: video preparation 705, extraction and calculation of feature values 710, detection of bit values 715, and embedded (watermarks). Decoding 720 information. A test is performed at 725 to determine if the watermark information has been successfully decoded. The process is complete when the watermark information has been successfully decoded. If the watermark information was not successfully decoded, the above process may be repeated.

비디오 준비 자체는 비디오 콘텐츠의 크기조정 또는 재-샘플링, 비디오 콘텐츠의 동기화 및 필터링을 포함한다:Video preparation itself includes resizing or resampling of video content, synchronization and filtering of video content:

·변환된 (왜곡된) 비디오의 재-샘플링이 프레임 속도가 삽입 및 검출 시에 상이한 경우에 행해져야 할 수 있다. 이는 종종 그러한데, 삽입을 위한 프레임 속도가 24인 한편, 검출시에는 예컨대, 25(PAL SECAM) 또는 29.97(NTSC)일 수 있다. 재-샘플링은 선형 보간을 이용해서 수행된다. 출력은 재샘플링된 비디오이다.Resampling of the transformed (distorted) video may have to be done if the frame rate is different at insertion and detection. This is often the case, while the frame rate for insertion is 24, while detection may be, for example, 25 (PAL SECAM) or 29.97 (NTSC). Resampling is performed using linear interpolation. The output is resampled video.

·커버(cover) 콘텐츠로 인한 잡음을 줄이기 위해 또는 워터마크를 강조하기 위해 통상적으로 고역-통과 시간 필터를 가지고, 재샘플링된 비디오를 필터링하는 것. 출력은 필터링된 비디오이다.Filtering resampled video, typically with a high-pass time filter to reduce noise due to cover content or to emphasize the watermark. The output is filtered video.

·필터링된 비디오의 동기화는 위에서 설명된 바와 같은 다양한 방법을 이용해서, 또는 동기화 비트가 비디오 콘텐츠 내에 삽입된 경우 동기화 비트와의 교차-상관에 의해 원래의 콘텐츠를 가지고 행해질 수 있다. 통상적으로, 매우 낮은 공간 주파수가 이용되는 경우, 시간적인 등록만이 행해져야 한다. 국부 동기화 유닛과 선택적으로 어셈블링된 전역 동기화 유닛이 워터마크 시퀀스의 시작점을 결정하기 위해 이용된다. 교차-상관이 필터링된 비디오와 알려진 동기화 비트 사이에서 수행 된다. 비디오의 대응 이동을 위한 교차-상관 함수 내에 통상적으로 강한 피크가 존재한다. 이제 도 8을 참조하면, 국부 동기화 프로세스가 805에서, 그다음의 국부 동기화 시퀀스/유닛을 검색한다. 그 다음 워터마크 칩에 대응하는 비디오 부분이 810에서 검색된다. 비디오 부분 및 국부 동기화 시퀀스/유닛이 815에서 교차-상관된다. 교차-상관된 특성값(P1)의 피크값이 820에서 위치되고 특성값(P2)의 피크값이 825에서 위치된다. 테스트가 830에서 이루어져 특성값(P1)이 특성값(P2) 더하기 사전-결정된 값보다 더 큰지 또는 특성값(P1)이 특성값(P2) 더하기 사전-결정된 값보다 더 작은지를 결정한다. 테스트 결과가 음인 경우 비디오 부분이 835에서 거부된다. 테스트 결과가 양인 경우 840에서 비디오 부분이 보유된다. 추가적인 테스트가 845에서 수행되어 비디오의 종단부가 도달되었는지를 결정한다. 비디오의 종단부가 도달된 경우 국부 동기화 프로세스가 행해진다. 비디오의 종단부가 도달되지 않은 경우 국부 동기화 프로세스가 반복된다. 도 9는 두 개의 연속적인 워터마크 칩의 시작점을 나타내는 두 개의 피크와의 교차-상관 함수 (실제로 크기의 저역 통과 필터링된 버전)을 도시한다. 일단 워터마크칩의 시작점이 위치되면, 각 페이로드의 시작점에 위치되는 국부 동기화 유닛은 규칙적인 간격에서 비디오의 근소한 재정렬을 위해 이용된다. 차례로, 12개의 국부 동기화 유닛 각각이 예상된 위치 주위의 작은 윈도우 내의 필터링된 비디오와 교차-상관된다. (최고 피크와 제2의 최고 피크 사이의 차에 의해 결정된 대로) 비교적 강한 상관 피크가 발견되는 경우, 인접 필터링된 비디오가 그다음의 단계를 위해 유지되며, 그렇지 않은 경우 폐기된다. 더 강한 상관 피크는 필터링된 비디오가 더 정밀하게 동기화된다는 표시자라는 것이 원리이다. 이 단계의 출력은 동기화된 비디오이다.Synchronization of the filtered video can be done with the original content using various methods as described above, or by cross-correlation with the synchronization bits when the synchronization bits are inserted into the video content. Typically, if very low spatial frequencies are used, only temporal registration should be done. The local synchronization unit and optionally assembled global synchronization unit are used to determine the starting point of the watermark sequence. Cross-correlation is performed between the filtered video and known sync bits. There is typically a strong peak in the cross-correlation function for the corresponding movement of the video. Referring now to FIG. 8, the local synchronization process retrieves the next local synchronization sequence / unit at 805. The video portion corresponding to the watermark chip is then retrieved at 810. The video portion and local synchronization sequence / unit are cross-correlated at 815. The peak value of the cross-correlated characteristic value P1 is located at 820 and the peak value of the characteristic value P2 is located at 825. A test is made at 830 to determine whether the characteristic value P1 is greater than the characteristic value P2 plus a predetermined value or whether the characteristic value P1 is smaller than the characteristic value P2 plus a predetermined value. If the test result is negative, the video portion is rejected at 835. If the test result is positive, the video portion is retained at 840. Additional testing is performed at 845 to determine if the end of the video has been reached. When the end of the video is reached, a local synchronization process is done. If the end of the video is not reached, the local synchronization process is repeated. 9 shows a cross-correlation function (actually a low pass filtered version of size) with two peaks representing the starting point of two consecutive watermark chips. Once the start point of the watermark chip is located, a local synchronization unit located at the start point of each payload is used for slight reordering of the video at regular intervals. In turn, each of the twelve local synchronization units is cross-correlated with the filtered video in a small window around the expected position. If a relatively strong correlation peak is found (as determined by the difference between the highest peak and the second highest peak), the adjacent filtered video is maintained for the next step, otherwise discarded. The principle is that a stronger correlation peak is an indicator that the filtered video is synchronized more precisely. The output of this step is synchronized video.

비디오 준비의 세 단계의 출력이 다음에서 '처리된 비디오'로 표시될 것이다. 처리된 비디오는 데이터 세트로서, 이는 워터마크 검출의 다음 단계인, 특성값의 추출/계산을 용이하게 하기 위해 수신된 비디오로부터 계산된다.The output of the three stages of video preparation will be marked as 'processed video' in the following. The processed video is a data set, which is calculated from the received video to facilitate extraction / calculation of feature values, the next step in watermark detection.

이전에 설명된 바와 같은 워터마크 삽입의 일 실시예에서, 네 개의 사분면 각각의 평균 휘도는 각 프레임에 대해 계산된다. 특성값이 프레임 ×4의 수의 벡터(a vector number of frames ×4)를 형성한다. LL 부대역 워터마킹을 이용하는 웨이블릿 워터마크 삽입을 위해, 특성값은 수신된 비디오의 기저대역 표현 또는 웨이블릿으로부터 추출될 수 있다. 양쪽 경우에, 프레임 ×4의 수의 크기의 처리된 비디오가 획득된다. 위 방식 모두에서, 프레임은 중심점으로부터 네 개의 부분/타일로 분리된다. 이 중심점이 프레임의 중심점에 자동으로 설정될 수 있으나 - 원래의 비디오에서 그러하듯이 - 캠코더 캡쳐링된 비디오 내에 자연적으로 몇 개의 오프셋을 갖는다. In one embodiment of watermark embedding as described previously, the average luminance of each of the four quadrants is calculated for each frame. The characteristic value forms a vector of frames x4. For wavelet watermark embedding using LL subband watermarking, the feature value may be extracted from the baseband representation or wavelet of the received video. In both cases, processed video of the size of the number of frames x 4 is obtained. In all of the above manner, the frame is separated into four parts / tiles from the center point. This center point can be automatically set at the center point of the frame-as in the original video-but naturally has some offset within the camcorder captured video.

LH 및 HL 부대역을 이용해서 웨이블릿 워터마크 삽입하기 위한 특성값을 추출 및 계산하는 것은 근소하게 상이하게 동작한다. LH 계수를 변경하는 것은 적어도 워터마킹된 비디오 내에서 임의의 어택 전에, 정밀하게 결정될 수 있는 주파수를 갖는 스트라이프(스트라이프는 기저대역 비디오 내에 동일하게 이격된 수평선임)를 생성한다. 이 스트라이프는 워터마크 에너지가 위에서 설명된 바와 같이 마스킹 모델을 이용해서 조정될 때는 가시적이지 않다. 사용자는 따라서 (예컨대, 푸리에 변환을 이용해서) 해당 주파수 내의 에너지를 측정함으로써 변환된 비디오를 계산할 수 있다. 그러나, 비디오의 캠코더 어택 및 후속 크롭핑 동안에, 관련 주파수가 이동될 수 있으며, 그것의 에너지가 인접 주파수 상에 확산된다. 그러므로, 모든 프레임을 위한 에너지 신호가 관련 주파수 주위의 5 ×5 윈도우 내에 수집된다. 이러한 25개의 신호 각각이 동기화 비트 시퀀스를 갖는 교차-상관 피크에 대해 테스트되며, 최고 피크를 갖는 하나가 특성값으로서 출력된다.Extracting and calculating feature values for wavelet watermark embedding using the LH and HL subbands operates slightly differently. Changing the LH coefficient produces a stripe with a frequency that can be precisely determined (stripes are equally spaced horizontal lines in the baseband video), at least before any attack in the watermarked video. This stripe is not visible when the watermark energy is adjusted using the masking model as described above. The user can thus calculate the converted video by measuring the energy within that frequency (eg, using a Fourier transform). However, during the camcorder attack and subsequent cropping of the video, the associated frequency can be shifted, and its energy spreads on adjacent frequencies. Therefore, energy signals for every frame are collected within a 5x5 window around the relevant frequency. Each of these 25 signals is tested for cross-correlation peaks with synchronization bit sequences, and one with the highest peak is output as a characteristic value.

워터마크 검출 단계에서, 특성값은 워터마크가 삽입되는 방법에 대응해서 계산된다. 워터마크는:In the watermark detection step, the feature value is calculated corresponding to the way in which the watermark is inserted. The watermark is:

■ 연속 프레임의 특성값;■ characteristic values of continuous frames;

■ 프레임의 구역의 하나의 특성값 및 사전-결정된 값;■ one characteristic value and a predetermined value of the region of the frame;

■ 프레임의 하나의 구역 및 동일한 프레임의 또 하나의 구역의 특성값■ Characteristic values of one section of the frame and another section of the same frame

■ 프레임의 하나의 구역 및 연속 프레임의 대응 구역의 특성값■ Characteristic values of one zone of the frame and the corresponding zone of successive frames

사이에서 및/또는 그 중에서 적어도 후속 연관을 실시함으로써 삽입될 수 있다.Intercalation and / or among them, by inserting at least a subsequent association.

특성값이 또한 계수값 자체일 수 있기 때문에, 워터마크는:Since the characteristic value can also be the coefficient value itself, the watermark is:

■ 비디오 볼륨 내의 하나의 계수값과 사전-결정된 값;One coefficient value and a predetermined value in the video volume;

■ 프레임의 하나의 부대역 내의 하나의 계수값과 연속 프레임 내의 대응 위치 및 부대역에서 나머지 계수값;One coefficient value in one subband of the frame and the remaining coefficient values in the corresponding position and subband in the continuous frame;

■ 프레임의 하나의 부대역 내의 하나의 계수값과 동일한 프레임의 또 하나의 부대역에서 또 하나의 계수값;One count value in another subband of the same frame as one count value in one subband of the frame;

사이에서 및/또는 그 중에서 적어도 후속 연관을 실시함으로써 삽입될 수 있 다.Intercalation and / or among them, by inserting at least a subsequent association.

특성값은 기저대역 및/또는 변환 영역에서 계산될 수 있다. 워터마크 삽입과 유사하게, 다수의 비트가 다수의 특성 값 사이에서 및/또는 그 중에서 다수의 연관으로부터 검출될 수 있다.The characteristic value can be calculated in the baseband and / or the transform domain. Similar to watermark embedding, multiple bits may be detected between and / or among multiple association values.

워터마크 검출의 제1 단계 및 제2 단계가 순서면에서 상호교환될 수 있다. 편의상, 특성값을 먼저 계산하는 것이 가능한 경우 유리한데, 그 이유는 이것이 데이터 컴팩션(compaction)을 야기하기 때문인데(즉, 각 프레임의 전체 이미지 데이터를 프레임당 수개의 값으로 줄임), 이는 워터마크가 더 쉽게 판독될 수 있는 형태에 맞춰질 수 있다. 그러나, 비디오의 심각한 왜곡 특히, 기하학적 왜곡으로 인해 특성값의 계산을 먼저 수행하는 것이 항상 가능하지는 않을 수 있다. The first and second steps of watermark detection can be interchanged in sequence. For convenience, it is advantageous if it is possible to calculate the characteristic value first, because this causes data compaction (i.e., reducing the total image data of each frame to several values per frame). The mark can be tailored to a form that can be read more easily. However, it may not always be possible to perform the calculation of the characteristic value first, due to severe distortion of the video, in particular geometric distortion.

제3 단계는 특성값을 입력으로서 수신하고, 127개의 인코딩된 비트 각각에 대해 가장 가능성이 높은(likely) 비트값을 출력한다. 특성값은 127개의 인코딩된 비트 각각의 다수의 삽입에 대응할 수 있다. 본 발명의 원리에 따른 예에서, 여기서 각 비트는 12개의 상이한 위치에서 삽입되며, 최대 12번의 삽입까지 존재할 수 있으나, 일정한 페이로드 유닛이 불량한 국부 동기화로 인해 폐기되는 경우 더 적은 삽입이 존재할 수 있다.The third step receives the characteristic value as an input and outputs the most likely bit value for each of the 127 encoded bits. The feature value may correspond to multiple insertions of each of the 127 encoded bits. In an example according to the principles of the present invention, where each bit is inserted at 12 different positions, there may be up to 12 inserts, but there may be fewer inserts if a given payload unit is discarded due to poor local synchronization. .

이제 도 10을 참조컨대, 디스조인트 계수 세트가 1005에서 그다음의 인코딩된 비트에 대해 검색된다. 1010에서, 관련 특성값이 디스조인트 계수 세트에 대해 계산된다. 1015에서 가장 가능성이 높은 비트값이 계산된 특성값으로부터 결정된다. 테스트가 1020에서 수행되어 임의의 더 많은 인코딩된 비트가 존재하는지를 결 정한다. 임의의 더 많은 인코딩된 비트가 존재하는 경우 위 프로세스가 반복된다. 예시적인 누적된 신호가 도 11에 도시된다.Referring now to FIG. 10, a disjoint coefficient set is searched for the next encoded bit at 1005. At 1010, a relevant characteristic value is calculated for the disjoint coefficient set. At 1015, the most likely bit value is determined from the computed characteristic value. The test is performed at 1020 to determine if there are any more encoded bits. The process is repeated if there are any more encoded bits. An exemplary cumulative signal is shown in FIG. 11.

인코딩된 페이로드의 각 비트가 확장되고, 암호화되며 콘텐츠 내의 다수 위치에서 삽입된다. 확장된 비트 각각에 대해, 위에서 설명된 바와 같이, 삽입은 두 개의 계수(C1 및 C2) 세트의 특성값 사이의 제약 예컨대, P(C1)>P(C2)을 설정함으로써 통상적으로 행해진다. N개의 이러한 확장된 비트 및 따라서 N개의 이러한 삽입된 제약이 존재한다고 가정하면:Each bit of the encoded payload is expanded, encrypted and inserted at multiple locations in the content. For each extended bit, as described above, insertion is typically done by setting a constraint between the characteristic values of the two sets of coefficients C1 and C2, eg, P (C1)> P (C2). Assuming there are N such extended bits and thus N such inserted constraints:

각 i 에 대해 P(C1i)>P(C2i)인 경우 Bit=1, 여기서 1≤i≤NBit = 1 if P (C1i)> P (C2i) for each i, where 1≤i≤N

각 i 에 대해 P(C1i)<P(C2i)인 경우 Bit=0, 여기서 1≤i≤NBit = 0 if P (C1i) <P (C2i) for each i, where 1≤i≤N

일반적으로, 연관을 확립하는데 있어서의 채널 잡음 또는 초기 불가능성으로 인해, 모든 연관이 삽입된 비트와 반드시 일치하지는 않을 것이다. 이 문제를 해결하기 위한 가장 간단한 접근법은 "다수결 투표"를 취하는 것이다. 즉, 계수 사이의 대응 연관이 가장 흔히 관찰되는 비트를 선택하기 위해,In general, due to channel noise or initial impossibility in establishing an association, not all associations will necessarily necessarily match the inserted bits. The simplest approach to solving this problem is to take a "vote majority" vote. That is, to select the bits where the corresponding association between coefficients is most often observed,

P(C1i)<P(C2i)(1≤i≤N)인 경우의 수가 N/2보다 더 큰 경우, Bit=1Bit = 1 if the number of cases where P (C1i) <P (C2i) (1≤i≤N) is greater than N / 2

그밖의 경우, Bit=0Otherwise, Bit = 0

이 접근법은 N이 짝수이고, 비트=1이고 비트=0에 대한 연관의 수가 동일한 경우를 해결하는 것을 돕지는 못한다. 나아가, 이 접근법은 P(C1), P(C2)의 정보, 및 연관을 정확하게 결정하는 가능성을 증가시킬 수 있는 아마도 그밖의 정보를 전부 이용하지 않는다. 더 정제된 접근법은 특성값 P(C1i) 및 P(C2i)의 관측이 제공되는 경우, 삽입된 비트값이 각각 1, 0인 확률을 추정하는 단계로 구성된다. 개별 적으로 추정된 확률은 확률 접근법을 이용해서 조합되고, 결정은 최대-우도(ML) 기준을 기초로 해서 이루어지는데, 가장 가능한 비트가 선택된다. 그밖의 기준이 가능한데, 이를테면 니만-피어슨 규칙(Neyman-Pearson rule)이다.This approach does not help solve the case where N is even, bit = 1 and the number of associations for bit = 0 is the same. Furthermore, this approach does not make full use of the information of P (C1), P (C2), and possibly other information, which can increase the likelihood of accurately determining the association. A more refined approach consists in estimating the probability that the inserted bit values are 1 and 0, respectively, if observations of the characteristic values P (C1i) and P (C2i) are provided. The individually estimated probabilities are combined using a probabilistic approach, and the decision is made based on the maximum-likelihood (ML) criterion, where the most likely bit is selected. Other criteria are possible, such as the Neyman-Pearson rule.

가장 가능한 비트가 선택되는 ML 규칙을 이용해서, 결정이 단지 특성값만을 기초로 해서 이루어진다. 이때 ML 규칙은:Using the ML rule, where the most likely bit is selected, the decision is made only based on the characteristic value. The ML rule is:

Figure 112008015179353-PCT00012
Figure 112008015179353-PCT00012

를 나타낸다. Indicates.

베이의 규칙(Baye's rule)을 이용해서, 그리고 각 비트값이 같을 가능성이 있다(equi-probable)는 것을 전제로 해서, 이는:Using Baye's rule, and assuming each bit is equally probable, it is:

Figure 112008015179353-PCT00013
Figure 112008015179353-PCT00013

로 고쳐 쓸 수 있다.Can be rewritten.

비트가 콘텐츠 내의 상이한 의사-랜덤 위치에서 확장되기 때문에, 특성값이 비교적 독립적이라는 것이 전제될 수 있다. 즉,Since the bits are expanded at different pseudo-random locations in the content, it can be assumed that the characteristic values are relatively independent. In other words,

Figure 112008015179353-PCT00014
Figure 112008015179353-PCT00014

알고리즘은The algorithm is

Figure 112008015179353-PCT00015
Figure 112008015179353-PCT00015

을 취한다.Take

이 수학식을 구현하기 위해, 수학식인 Prob(P(C1i),P(C2i);bit=1) 및 Prob(P(C1i),P(C2i);bit=0)이 도출될 필요가 있다. 이 수학식은 채널의 특성에 의존할 것이다. 일반적인 기법은 이 함수를 추정하기 위해 충분한 데이터를 수집하는 단계로 구성된다. 다소의 선험적인 지식, 또는 확률 모델에 대한 전제(예컨대, 계수 또는 잡음이 가우시안 분포를 따른다)가 이용될 수 있다.In order to implement this equation, the equations Prob (P (C1i), P (C2i); bit = 1) and Prob (P (C1i), P (C2i); bit = 0) need to be derived. This equation will depend on the characteristics of the channel. The general technique consists of collecting enough data to estimate this function. Some a priori knowledge, or premise for a probabilistic model (eg, coefficients or noise follow a Gaussian distribution) can be used.

확률의 로그가 P(C1i)와 P(C2i) 사이의 차이에 비례하는 매우 특정 경우를 고려하면, 비트 1 및 비트 0에 대해 대칭적으로:Considering a very specific case where the log of the probability is proportional to the difference between P (C1i) and P (C2i), symmetrically for bit 1 and bit 0:

Figure 112008015179353-PCT00016
Figure 112008015179353-PCT00016

Figure 112008015179353-PCT00017
Figure 112008015179353-PCT00017

이때 규칙은:The rule is:

Figure 112008015179353-PCT00018
Figure 112008015179353-PCT00018

로 된다.It becomes

이 특정 경우를 위해 도출된 규칙은 확산 스펙트럼 시스템에서 이용된 것과 마찬가지로, 간단한 상관에 대응한다. 이 규칙은 그러나, 서브최적인데 그 이유는 일반적으로 확률이 차이에 로그 방식으로 변하지 않을 것이기 때문이다. 이는 본 발명의 방법이 확산 스펙트럼 기반 방법보다 더 일반적이고, 더 효과적으로 보여질 수있는 하나의 이유이다.The rules derived for this particular case correspond to simple correlations, as used in spread spectrum systems. This rule, however, is suboptimal because in general the probability will not change in a logarithmic way. This is one reason why the method of the present invention can be seen more generally and more effectively than the spread spectrum based method.

사실, 원래의 콘텐츠 값에 따라, 제약이 삽입되는 특정 방식으로 인해, 확률이 일반적으로 단조 증가 함수가 아니라는 것이 드러난다. 이를 예시하기 위해, 다 음 시뮬레이션이 수행되었는데, 여기서 비트값의 추정치가 각각 본 발명의 연관-기반 접근법과 고전적인 확산 스펙트럼 접근법에 대해, 수신된 신호의 관측을 기초로 해서 비교되었다.In fact, depending on the original content value, it turns out that due to the particular way constraints are inserted, the probability is generally not a monotonically increasing function. To illustrate this, the following simulation was performed, where the estimates of the bit values were compared based on the observation of the received signal, respectively, for the association-based approach and the classical spread spectrum approach of the present invention.

원래의 콘텐츠 가우시안 잡음(X)이 생성되었다. 이진 워터마크(W)가 [-1, +1]에서 값을 취해서 이 신호에 부가되었다. 이진 워터마크는 다음 방식으로 제약-기반 개념에 따라서 먼저 부가되었다:The original content Gaussian noise (X) was generated. A binary watermark W was taken from [-1, +1] and added to this signal. Binary watermarks were first added according to the constraint-based concept in the following manner:

Figure 112008015179353-PCT00019
Figure 112008015179353-PCT00019

값(a1=0.5, a2=-0.5, r=0.3)이 선택되었다. 이는 -15dB의 PSNR을 야기했다.Values (a1 = 0.5, a2 = -0.5, r = 0.3) were selected. This resulted in a PSNR of -15 dB.

이후 확산-스펙트럼 워터마크가 생성된 신호에 다음 방식으로 부가되었다:A spread-spectrum watermark was then added to the generated signal in the following manner:

Y2=X+a*WY2 = X + a * W

파라미터 'a'는 동일한 -15dB PSNR을 야기하기 위해 조정되었다.The parameter 'a' was adjusted to cause the same -15dB PSNR.

동일한 잡음 벡터(N)가 2개의 수신된 신호(R1=Y1+N 및 R2=Y2+N)를 얻기 위해 두 개의 신호(Y1 및 Y2)에 부가되었다. 잡음은 또한 원래의 콘텐츠에 대해 -10dB의 PSNR을 가졌다. 두 개의 수신된 콘텐츠(R1 및 R2)에 대해, 수신된 신호값이 제공된 경우 삽입된 비트가 '1'인 확률이 추정되었다. 결과가 도 12에 도시된 그래프 내에 나타난다. 차이는 현저하다: 예상된 대로, 확산-스펙트럼 삽입에 대해, 비트가 1인 추정된 확률은 수신된 신호값과 함께 선형적으로 증가한다. 그러나, 본 발명의 연관-기반 접근법에서, 추정된 확률은 최소 이후에 최대를 겪는 매우 특정한 모양을 갖는다. 이 모양은 다음과 같이 설명될 수 있다. The same noise vector N was added to the two signals Y1 and Y2 to obtain two received signals R1 = Y1 + N and R2 = Y2 + N. Noise also had a PSNR of -10dB for the original content. For the two received contents R1 and R2, the probability that the inserted bit is '1' was estimated when the received signal value was provided. The results are shown in the graph shown in FIG. The difference is significant: As expected, for spread-spectrum insertion, the estimated probability that the bit is 1 increases linearly with the received signal value. However, in the association-based approach of the present invention, the estimated probability has a very specific shape that undergoes a maximum after a minimum. This shape can be explained as follows.

·커버 콘텐츠가 높은 또는 낮은 값을 가질때, 가장 가능하게는 삽입을 위해 사용되지 않으며, 따라서 수신된 신호가 비트와 상관되지 않는다는 것이 논리적이다.When the cover content has a high or low value, it is logical that it is most likely not used for insertion, so that the received signal is not correlated with the bit.

·추정치는 -0.5 및 +0.5에서 가장 신뢰할만한 한데, 이들은 워터마크가 삽입되는 최솟값/최댓값이다.Estimates are the most reliable at -0.5 and +0.5, which are the minimum / maximum values at which watermarks are inserted.

그러므로, 정확한 확률 추정치는 본 발명의 방법의 적절한 동작에 상당히 중요하다는 결론이 나올 수 있다.Therefore, it can be concluded that accurate probability estimates are of great importance for the proper operation of the method of the present invention.

최종 단계에서, 일단 인코딩된 페이로드의 127개의 비트값이 추정되는 경우, 64개의 비트 페이로드가 BCH 디코더를 이용해서, 디코딩될 수 있다. 이러한 코드를 가지고, 최대 10개까지의 에러가 추정된 인코딩된 페이로드로부터 검출될 수 있다. 위에서 설명된 바와 같이, 이러한 페이로드는 디지털 씨네마 애플리케이션에서 위치/프로젝터 식별자 및 타임스탬프와 같은 포렌식 추적을 위한 다양한 정보를 포함한다. 이러한 정보는 디코딩된 페이로드로부터 추출되며 발생한 잠재적인 사기를 포렌식 추적하는 것과 같은 넓은 범위의 이용을 허용한다.In the final step, once the 127 bit values of the encoded payload are estimated, 64 bit payloads can be decoded using the BCH decoder. With this code, up to 10 errors can be detected from the estimated encoded payload. As described above, this payload contains various information for forensic tracking, such as location / projector identifiers and timestamps in digital cinema applications. This information is extracted from the decoded payload and allows for a wide range of uses, such as forensic tracking of potential frauds that have occurred.

최종 단계에서 실패의 경우에(즉, 어떠한 유효한 워터마크 정보도 디코딩되지 않는 경우에), 위의 네 단계는 워터마크 정보가 성공적으로 디코딩되거나 최대의 수의 이러한 시도에 도달할 때까지 각 단계에 대해 상이한 전략(예컨대, 제1 단계에서 비디오를 위한 최적화된 동기화 및 등록)을 가지고 반복될 수 있다.In case of failure at the final stage (ie no valid watermark information is decoded), the above four stages will be followed by each stage until the watermark information has been successfully decoded or the maximum number of such attempts has been reached. Can be repeated with different strategies (eg, optimized synchronization and registration for video in the first step).

본 발명이 예컨대, 서버 또는 이동 디바이스 내에서, 하드웨어(예컨대, ASIC 칩), 소프트웨어, 펌웨어, 전용 프로세서, 또는 이들의 조합인 다양한 형태로 구현될 수 있다는 것이 이해되어야 한다. 바람직하게는, 본 발명은 하드웨어와 소프트웨어의 조합으로 구현된다. 더욱이, 소프트웨어는 바람직하게는 프로그램 저장 디바이스 상에 명백하게 구현된 응용 프로그램으로 구현된다. 응용 프로그램은 임의의 적합한 아키텍쳐를 포함하는 기계에 업로드될 수 있으며, 이 기계에 의해 실행될 수 있다. 바람직하게는, 이 기계는 하나 이상의 중앙 처리 장치(CPU), 랜덤 액세스 메모리(RAM), 및 입력/출력(I/O) 인터페이스(들)와 같은 하드웨어를 구비하는 컴퓨터 플랫폼 상에서 구현된다. 이 컴퓨터 플랫폼은 또한 운영 체제 및 마이크로인스트럭션 코드를 포함한다. 본 명세서에 설명된 다양한 프로세스 및 기능은 운용체제를 통해 실행되는, 마이크로인스트럭션 코드의 일부이거나 응용 프로그램의 일부(또는 이들의 조합)일 수 있다. 또한, 다양한 그밖의 병렬 디바이스가 컴퓨터 플랫폼에 연결될 수 있는데, 이를테면 부가적인 데이터 저장 디바이스 및 인쇄 디바이스이다.It should be understood that the present invention may be implemented in various forms, for example, in a server or mobile device, such as hardware (eg, ASIC chip), software, firmware, dedicated processor, or a combination thereof. Preferably, the present invention is implemented in a combination of hardware and software. Moreover, the software is preferably implemented as an application explicitly implemented on a program storage device. The application can be uploaded to and executed by a machine that includes any suitable architecture. Preferably, the machine is implemented on a computer platform having hardware such as one or more central processing units (CPUs), random access memory (RAM), and input / output (I / O) interface (s). The computer platform also includes an operating system and microinstruction code. The various processes and functions described herein may be part of microinstruction code or part of an application program (or a combination thereof) that is executed through an operating system. In addition, various other parallel devices may be connected to the computer platform, such as additional data storage devices and printing devices.

첨부 도면에 도시된 구성적인 시스템 성분 및 방법 단계의 일부가 바람직하게는 소프트웨어로 구현되기 때문에, 시스템 성분(또는 프로세스 단계) 사이의 실제 연결이 본 발명이 프로그래밍되는 방식에 따라 상이할 수 있다는 것이 추가적으로 이해되어야 한다. 본 명세서 내의 교시가 제공되는 경우, 당업자는 본 발명의 이러한 및 유사한 구현 또는 구성을 예견할 수 있을 것이다.Since some of the structural system components and method steps shown in the accompanying drawings are preferably implemented in software, it is additionally that the actual connection between system components (or process steps) may differ depending on how the invention is programmed. It must be understood. Given the teachings herein, one of ordinary skill in the art would be able to anticipate such and similar implementations or configurations of the invention.

본 발명은 비디오 콘텐츠의 워터마킹에 이용가능하며 특히 디지털 씨네마 애 플리케이션에서 워터마크를 삽입하는 것 및 검출하는 것에 이용가능하다.The present invention is available for watermarking video content, in particular for embedding and detecting watermarks in digital cinema applications.

Claims (44)

비디오 볼륨 내에서 선택된 계수 세트의 특성값 사이에서 연관을 실시함으로써 워터마크를 삽입하기 위한 방법으로서,A method for embedding a watermark by performing an association between feature values of a selected set of coefficients in a video volume, the method comprising: 페이로드를 생성하는 단계;Generating a payload; 계수를 선택하는 단계;Selecting a coefficient; 계수를 변경하는 단계로서, 상기 변경된 계수가 상기 선택된 계수를 대체하는, 계수 변경 단계; 및Changing a coefficient, wherein the changed coefficient replaces the selected coefficient; And 상기 워터마크를 상기 비디오 볼륨 내에 삽입하는 단계Embedding the watermark in the video volume 를 포함하는, 워터마크를 삽입하기 위한 방법.Including a watermark. 제1 항에 있어서,According to claim 1, 특성은 비디오 볼륨 내의 임의의 부분의 측정가능한 특징인, 워터마크를 삽입하기 위한 방법.The characteristic is a measurable characteristic of any portion in the video volume. 제1 항에 있어서,According to claim 1, 상기 특성값은 평균을 내는것, 최대를 결정하는 것 및 최소를 결정하는 것 중 하나에 의해 계산되는, 워터마크를 삽입하기 위한 방법.Wherein said characteristic value is calculated by one of averaging, determining a maximum, and determining a minimum. 제1 항에 있어서,According to claim 1, 계수 변경은 상기 특성값 사이에서 상기 연관을 실시하기 위해 공간 영역 및 변환 영역 중 하나에서 수행되는, 워터마크를 삽입하기 위한 방법.A coefficient change is performed in one of a spatial area and a transform area to effect the association between the feature values. 제1 항에 있어서,According to claim 1, 상기 페이로드의 비트가 상기 선택된 계수 세트 중 적어도 두 세트의 특성값 사이에서 또는 그중에서 하나의 연관을 실시함으로써 삽입되는, 워터마크를 삽입하기 위한 방법.And a bit of the payload is inserted by performing an association between or among at least two sets of characteristic values of the selected set of coefficients. 제1 항에 있어서,According to claim 1, 상기 페이로드의 비트가 상기 선택된 계수 세트 중 한 세트의 상기 특성값 중 하나와 사전정의된 값 사이에서 하나의 연관을 실시함으로써 삽입되는, 워터마크를 삽입하기 위한 방법.And a bit of the payload is inserted by performing one association between one of the feature values of one of the selected set of coefficients and a predefined value. 제1 항에 있어서,According to claim 1, 상기 페이로드의 다수의 비트가 상기 선택된 계수 세트의 적어도 두 세트의 특성값 사이에서 또는 그중에서 다수의 연관을 실시함으로써 삽입되는, 워터마크를 삽입하기 위한 방법.And a plurality of bits of the payload are inserted by performing a plurality of associations between or among at least two sets of characteristic values of the selected coefficient set. 제1 항에 있어서,According to claim 1, 상기 페이로드의 다수의 비트가 상기 선택된 계수 세트의 적어도 두 세트의 특성값 사이에서 또는 그중에서 다수의 연관을 실시함으로써 삽입되는, 워터마크를 삽입하기 위한 방법.And a plurality of bits of the payload are inserted by performing a plurality of associations between or among at least two sets of characteristic values of the selected coefficient set. 제1 항에 있어서,According to claim 1, 상기 변경 단계는 상기 비디오 볼륨에 삽입될 상기 페이로드 및 키를 기초로 해서, 상기 선택된 계수 세트의 특성값 사이에서 제약-기반 연관을 확립하는 단계를 더 포함하며, 나아가 상기 선택된 계수 세트는 디스조인트(disjoint)인 , 워터마크를 삽입하기 위한 방법.The modifying step further comprises establishing a constraint-based association between characteristic values of the selected coefficient set based on the payload and key to be inserted into the video volume, further wherein the selected coefficient set is disjointed. (disjoint) A method for inserting a watermark. 제9 항에 있어서,The method of claim 9, 상기 연관은 상기 선택된 디스조인트 계수 세트의 상기 특성의 상기 값 사이에서 부등(inequality)인, 워터마크를 삽입하기 위한 방법.And said association is inequality between said values of said property of said selected disjoint coefficient set. 제10 항에 있어서,The method of claim 10, 값(r)을 선택하는 단계; 및Selecting a value r; And 상기 부등 연관을 실시하기 위해 상기 선택된 디스조인트 계수 세트의 상기 특성값 중 하나에 상기 값(r)을 부가하는 단계Adding the value r to one of the characteristic values of the selected disjoint coefficient set to effect the inequality association 를 더 포함하는, 워터마크를 삽입하기 위한 방법.Further comprising a watermark. 제10 항에 있어서,The method of claim 10, 상기 부등 연관이 적절한 경우, 상기 선택된 디스조인트 계수 세트의 상기 특성값의 어떠한 변경도 수행되지 않는, 워터마크를 삽입하기 위한 방법.And if said inequality association is appropriate, no change of said characteristic value of said selected disjoint coefficient set is performed. 제10 항에 있어서,The method of claim 10, 반대의 부등 연관이 존재하고 상기 선택된 디스조인트 계수 세트의 상기 특성값의 변경이 지각적인 손상을 야기할 경우, 어떠한 변경도 수행되지 않는, 워터마크를 삽입하기 위한 방법.If an opposite inequality exists and a change in the characteristic value of the selected disjoint coefficient set causes a perceptual damage, no change is made. 제10 항에 있어서,The method of claim 10, 상기 선택된 디스조인트 계수 세트의 상기 특성값이 상기 부등 연관을 실시하기 위해 변경되는, 워터마크를 삽입하기 위한 방법.And the characteristic value of the selected disjoint coefficient set is changed to effect the unequal association. 제10 항에 있어서,The method of claim 10, 상기 선택된 디스조인트 계수 세트의 상기 특성값이 상기 부등 연관을 실시하기 위해 비례적으로 변경되는, 워터마크를 삽입하기 위한 방법.And the characteristic value of the selected disjoint coefficient set is changed proportionally to effect the unequal association. 제15 항에 있어서,The method of claim 15, 상기 선택된 디스조인트 계수 세트의 상기 하나의 상기 특성값의 하나를 복사하는 단계;Copying one of said one said characteristic value of said selected disjoint coefficient set; 상기 선택된 디스조인트 계수 세트의 상기 하나의 상기 복사된 특성값을 비 트-이동하는 단계; 및Bit-shifting said one copied characteristic value of said selected disjoint coefficient set; And 상기 선택된 디스조인트 계수 세트의 상기 하나의 상기 비트-이동되고 복사된 특성값을 상기 선택된 디스조인트 계수 세트의 상기 하나의 상기 특성값에 부가하는 단계Adding said one said bit-shifted and copied characteristic value of said selected disjoint coefficient set to said one said characteristic value of said selected disjoint coefficient set 를 더 포함하는, 워터마크를 삽입하기 위한 방법.Further comprising a watermark. 제15 항에 있어서,The method of claim 15, 상기 선택된 디스트조인트 계수 세트의 상기 특성값을 복사하는 단계;Copying said characteristic value of said selected disjoint coefficient set; 상기 선택된 디스트조인트 계수 세트의 상기 복사된 특성값을 비트-이동하는 단계; 및Bit-shifting the copied characteristic value of the selected disjoint coefficient set; And 상기 선택된 디스트조인트 계수 세트 중 상기 하나의 대응 특성값에 상기 선택된 디스트조인트 계수 세트의 상기 비트-이동되고 복사된 특성값을 부가하는 단계Adding the bit-shifted and copied feature value of the selected disjoint coefficient set to the corresponding characteristic value of the selected disjoint coefficient set. 를 더 포함하는, 워터마크를 삽입하기 위한 방법.Further comprising a watermark. 제9 항에 있어서,The method of claim 9, 상기 제약-기반 연관은 선형인, 워터마크를 삽입하기 위한 방법.And the constraint-based association is linear. 제9 항에 있어서,The method of claim 9, 상기 제약-기반 연관은 비-선형인, 워터마크를 삽입하기 위한 방법.And the constraint-based association is non-linear. 제9 항에 있어서,The method of claim 9, 상기 제약-기반 연관이 상기 디스조인트 계수 세트의 상기 특성값의 평균값이고 제1의 상기 디스조인트 계수 세트의 상기 특성값이 양으로 변경되고 제2의 상기 디스조인트 계수 세트의 상기 특성의 상기 값이 음으로 변경되는, 워터마크를 삽입하기 위한 방법.The constraint-based association is an average value of the characteristic values of the disjoint coefficient set and the characteristic value of the first disjoint coefficient set is changed to a positive value and the value of the characteristic of the second disjoint coefficient set is A method for inserting a watermark, which is changed to negative. 제9 항에 있어서,The method of claim 9, 상기 제약-기반 연관은 시간적으로 마스킹되는, 워터마크를 삽입하기 위한 방법.And the constraint-based association is masked in time. 제1 항에 있어서,According to claim 1, 상기 계수는 최소로 변경되는, 워터마크를 삽입하기 위한 방법.And the coefficient is changed to a minimum. 비디오 볼륨 내에서 선택된 계수 세트의 특성값 사이에서 연관을 실시함으로써 워터마크를 삽입하기 위한 시스템으로서,A system for embedding a watermark by performing an association between feature values of a selected set of coefficients in a video volume, the system comprising: 페이로드를 생성하는 수단;Means for generating a payload; 계수를 선택하는 수단;Means for selecting coefficients; 계수를 변경하는 수단으로서, 상기 변경된 계수가 상기 선택된 계수를 대체하는, 계수 변경 수단; 및Means for changing a coefficient, said coefficient changing means replacing said selected coefficient; And 상기 워터마크를 상기 비디오 볼륨 내에 삽입하는 수단Means for embedding the watermark in the video volume 을 포함하는, 워터마크를 삽입하기 위한 시스템.And a watermark for embedding the watermark. 제23 항에 있어서,The method of claim 23, wherein 특성은 비디오 볼륨 내의 임의의 부분의 측정가능한 특징인, 워터마크를 삽입하기 위한 시스템.The characteristic is a measurable characteristic of any portion in the video volume. 제23 항에 있어서,The method of claim 23, wherein 상기 특성값은 평균을 내는것, 최대를 결정하는 것 및 최소를 결정하는 것 중 하나에 의해 계산되는, 워터마크를 삽입하기 위한 시스템.Wherein the characteristic value is calculated by one of averaging, determining a maximum, and determining a minimum. 제23 항에 있어서,The method of claim 23, wherein 계수 변경은 상기 특성값 사이에서 상기 연관을 실시하기 위해 공간 영역 및 변환 영역 중 하나에서 수행되는, 워터마크를 삽입하기 위한 시스템.The coefficient change is performed in one of a spatial area and a transform area to effect the association between the characteristic values. 제23 항에 있어서,The method of claim 23, wherein 상기 페이로드의 비트가 상기 선택된 계수 세트 중 적어도 두 세트의 특성값 사이에서 또는 그중에서 하나의 연관을 실시함으로써 삽입되는, 워터마크를 삽입하기 위한 시스템.And a bit of the payload is inserted by performing an association between or among at least two sets of feature values of the selected set of coefficients. 제23 항에 있어서,The method of claim 23, wherein 상기 페이로드의 비트가 상기 선택된 계수 세트 중 한 세트의 상기 특성값 중 하나와 사전정의된 값 사이에서 하나의 연관을 실시함으로써 삽입되는, 워터마크를 삽입하기 위한 시스템.And a bit of the payload is inserted by making one association between one of the characteristic values of one set of the selected set of coefficients and a predefined value. 제23 항에 있어서,The method of claim 23, wherein 상기 페이로드의 다수의 비트가 상기 선택된 계수 세트의 적어도 두 세트의 특성값 사이에서 또는 그중에서 다수의 연관을 실시함으로써 삽입되는, 워터마크를 삽입하기 위한 시스템.And a plurality of bits of the payload are inserted by performing a plurality of associations between or among at least two sets of feature values of the selected coefficient set. 제23 항에 있어서,The method of claim 23, wherein 상기 페이로드의 다수의 비트가 상기 선택된 계수 세트의 적어도 두 세트의 특성값 사이에서 또는 그중에서 다수의 연관을 실시함으로써 삽입되는, 워터마크를 삽입하기 위한 시스템.And a plurality of bits of the payload are inserted by performing a plurality of associations between or among at least two sets of feature values of the selected coefficient set. 제23 항에 있어서,The method of claim 23, wherein 상기 변경 수단은 상기 비디오 볼륨에 삽입될 상기 페이로드 및 키를 기초로 해서, 상기 선택된 계수 세트의 특성값 사이에서 제약-기반 연관을 확립하는 단계를 더 포함하며, 나아가 상기 선택된 계수 세트는 디스조인트(disjoint)인 , 워터마크를 삽입하기 위한 시스템.The changing means further comprises establishing a constraint-based association between characteristic values of the selected coefficient set based on the payload and the key to be inserted into the video volume, further wherein the selected coefficient set is disjointed. (disjoint) A system for embedding watermarks. 제31 항에 있어서,The method of claim 31, wherein 상기 연관은 상기 선택된 디스조인트 계수 세트의 상기 특성의 상기 값 사이에서 부등(inequality)인, 워터마크를 삽입하기 위한 방법.And said association is inequality between said values of said property of said selected disjoint coefficient set. 제32 항에 있어서,33. The method of claim 32 wherein 값(r)을 선택하는 수단; 및Means for selecting a value r; And 상기 부등 연관을 실시하기 위해 상기 선택된 디스조인트 계수 세트의 상기 특성값 중 하나에 상기 값(r)을 부가하는 수단Means for adding said value r to one of said characteristic values of said selected disjoint coefficient set for effecting said unequal association; 을 더 포함하는, 워터마크를 삽입하기 위한 방법.Further comprising a watermark. 제32 항에 있어서,33. The method of claim 32 wherein 상기 부등 연관이 적절한 경우, 상기 선택된 디스조인트 계수 세트의 상기 특성값의 어떠한 변경도 수행되지 않는, 워터마크를 삽입하기 위한 시스템.And if said inequality association is appropriate, no change of said characteristic value of said selected disjoint coefficient set is performed. 제32 항에 있어서,33. The method of claim 32 wherein 반대의 부등 연관이 존재하고 상기 선택된 디스조인트 계수 세트의 상기 특성값의 변경이 지각적인 손상을 야기할 경우, 어떠한 변경도 수행되지 않는, 워터마크를 삽입하기 위한 시스템.And if there is an opposite inequality association and a change in the characteristic value of the selected disjoint coefficient set causes a perceptual damage, no change is made. 제32 항에 있어서,33. The method of claim 32 wherein 상기 선택된 디스조인트 계수 세트의 상기 특성값이 상기 부등 연관을 실시하기 위해 변경되는, 워터마크를 삽입하기 위한 시스템.And the characteristic value of the selected disjoint coefficient set is changed to effect the unequal association. 제32 항에 있어서,33. The method of claim 32 wherein 상기 선택된 디스조인트 계수 세트의 상기 특성값이 상기 부등 연관을 실시하기 위해 비례적으로 변경되는, 워터마크를 삽입하기 위한 시스템.And the characteristic value of the selected disjoint coefficient set is changed proportionally to effect the unequal association. 제37 항에 있어서,The method of claim 37, 상기 선택된 디스조인트 계수 세트의 상기 하나의 상기 특성값의 하나를 복사하는 수단;Means for copying one of said one said characteristic value of said selected disjoint coefficient set; 상기 선택된 디스조인트 계수 세트의 상기 하나의 상기 복사된 특성값을 비트-이동하는 수단; 및Means for bit-shifting said one copied characteristic value of said selected disjoint coefficient set; And 상기 선택된 디스조인트 계수 세트의 상기 하나의 상기 비트-이동되고 복사된 특성값을 상기 선택된 디스조인트 계수 세트의 상기 하나의 상기 특성값에 부가하는 수단Means for adding said one bit-shifted and copied characteristic value of said selected disjoint coefficient set to said one said characteristic value of said selected disjoint coefficient set 을 더 포함하는, 워터마크를 삽입하기 위한 시스템.The system for inserting a watermark, further comprising. 제37 항에 있어서,The method of claim 37, 상기 선택된 디스트조인트 계수 세트의 상기 특성값을 복사하는 수단;Means for copying said characteristic value of said selected disjoint coefficient set; 상기 선택된 디스트조인트 계수 세트의 상기 복사된 특성값을 비트-이동하는 수단; 및Means for bit-shifting the copied characteristic value of the selected disjoint coefficient set; And 상기 선택된 디스트조인트 계수 세트 중 상기 하나의 대응 특성값에 상기 선택된 디스트조인트 계수 세트의 상기 비트-이동되고 복사된 특성값을 부가하는 수단Means for adding said bit-shifted and copied characteristic value of said selected disjoint coefficient set to said corresponding characteristic value of said selected disjoint coefficient set. 을 더 포함하는, 워터마크를 삽입하기 위한 시스템.The system for inserting a watermark, further comprising. 제31 항에 있어서,The method of claim 31, wherein 상기 제약-기반 연관은 선형인, 워터마크를 삽입하기 위한 시스템.And the constraint-based association is linear. 제31 항에 있어서,The method of claim 31, wherein 상기 제약-기반 연관은 비-선형인, 워터마크를 삽입하기 위한 시스템.And the constraint-based association is non-linear. 제31 항에 있어서,The method of claim 31, wherein 상기 제약-기반 연관이 상기 디스조인트 계수 세트의 상기 특성값의 평균값이고 제1의 상기 디스조인트 계수 세트의 상기 특성값이 양으로 변경되고 제2의 상기 디스조인트 계수 세트의 상기 특성의 상기 값이 음으로 변경되는, 워터마크를 삽입하기 위한 시스템.The constraint-based association is an average value of the characteristic values of the disjoint coefficient set and the characteristic value of the first disjoint coefficient set is changed to a positive value and the value of the characteristic of the second disjoint coefficient set is A system for embedding a watermark, which is changed to negative. 제31 항에 있어서,The method of claim 31, wherein 상기 제약-기반 연관은 시간적으로 마스킹되는, 워터마크를 삽입하기 위한 시스템.And the constraint-based association is masked in time. 제23 항에 있어서,The method of claim 23, wherein 상기 계수는 최소로 변경되는, 워터마크를 삽입하기 위한 시스템.And the coefficient is changed to a minimum.
KR1020087005099A 2008-02-29 2005-09-09 Coefficient modification for video watermarking KR20080043323A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020087005099A KR20080043323A (en) 2008-02-29 2005-09-09 Coefficient modification for video watermarking

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020087005099A KR20080043323A (en) 2008-02-29 2005-09-09 Coefficient modification for video watermarking

Publications (1)

Publication Number Publication Date
KR20080043323A true KR20080043323A (en) 2008-05-16

Family

ID=39661756

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087005099A KR20080043323A (en) 2008-02-29 2005-09-09 Coefficient modification for video watermarking

Country Status (1)

Country Link
KR (1) KR20080043323A (en)

Similar Documents

Publication Publication Date Title
US20090252370A1 (en) Video watermark detection
US20090220070A1 (en) Video Watermarking
US20090136083A1 (en) Coefficient Selection for Video Watermarking
US20090226030A1 (en) Coefficient modification for video watermarking
KR101125351B1 (en) Method and system to process a digital image
KR19980042061A (en) Digital watermark insertion and extraction method
Cheddad et al. Enhancing steganography in digital images
Thiemert et al. Using entropy for image and video authentication watermarks
Asikuzzaman et al. A blind digital video watermarking scheme with enhanced robustness to geometric distortion
KR20080043323A (en) Coefficient modification for video watermarking
KR20080043321A (en) Coefficient selection for video watermarking
KR20080043320A (en) Video watermark detection
KR20080045163A (en) Video watermarking
KR100973302B1 (en) A watermarking method of the mobile terminal for multimedia forensic
WO2007032754A1 (en) Detection of bit values of a watermark
Lee et al. Multi-bit video watermarking based on 3D DFT using perceptual models
Sagetong et al. Dynamic wavelet feature-based watermarking for copyright tracking in digital movie distribution systems
Shao et al. A novel frequency domain watermarking algorithm with resistance to geometric distortions and copy attack
Kumar et al. A multiple secret image embedding in dynamic ROI keypoints based on hybrid Speeded Up Scale Invariant Robust Features (h-SUSIRF) algorithm
KR101025311B1 (en) Robust high definition video watermarking system based on self synchronizing siginal against composite distortions
Doërr et al. Switching between orthogonal watermarks for enhanced security against collusion in video
Huang et al. Video Watermarking Algorithm Based on Pseudo 3D DCT and Quantization Index Modulation.
Liang et al. Video content authentication technique based on invariant feature detection and cloud watermark
CN101258521A (en) Coefficient modifying of video watermark
Wong Image watermarking and data hiding techniques

Legal Events

Date Code Title Description
A201 Request for examination
E601 Decision to refuse application