KR101921354B1 - 비디오 서명 - Google Patents

비디오 서명 Download PDF

Info

Publication number
KR101921354B1
KR101921354B1 KR1020137026097A KR20137026097A KR101921354B1 KR 101921354 B1 KR101921354 B1 KR 101921354B1 KR 1020137026097 A KR1020137026097 A KR 1020137026097A KR 20137026097 A KR20137026097 A KR 20137026097A KR 101921354 B1 KR101921354 B1 KR 101921354B1
Authority
KR
South Korea
Prior art keywords
frame
video
dimensional vector
cells
signature
Prior art date
Application number
KR1020137026097A
Other languages
English (en)
Other versions
KR20140015430A (ko
Inventor
세스 헨드릭슨
조지 란델 동
사스와타 만달
찰스 로렌스 3세 지트닉
Original Assignee
마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 filed Critical 마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Publication of KR20140015430A publication Critical patent/KR20140015430A/ko
Application granted granted Critical
Publication of KR101921354B1 publication Critical patent/KR101921354B1/ko

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/8352Generation of protective data, e.g. certificates involving content or source identification data, e.g. Unique Material Identifier [UMID]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • G06V20/47Detecting features for summarising video content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Television Systems (AREA)

Abstract

본 발명에 따르면, 연속적인 프레임 N-1과 프레임 N 사이의 비디오 정보에서의 작은 변화 뒤에 연속적인 프레임 N과 프레임 N+1 사이의 비디오 정보에서의 큰 변화가 이어질 때, 비디오 서명이 생성된다. 프레임 N 및/또는 프레임 N+1로부터의 정보는 비디오 서명을 형성하는 데에 사용된다.

Description

비디오 서명{VIDEO SIGNATURE}
메타데이터와 같은 식별 정보는 종종 디지털 비디오 콘텐츠에 포함되지 않는다. 이것은 종종 뷰어(viewer)가 타이틀, 생산연도, 콘텐츠의 장르, 또는 만족스러운 뷰 체험을 위해 뷰어가 원할 수 있는 임의의 다른 정보를 식별할 수 없게 한다.
본 요약부는 아래의 상세한 설명에서 추가로 설명되는 개념들의 선택을 단순화된 형태로 소개하도록 제공되었다. 본 요약부는 본 발명의 청구사항의 중요 특성 또는 기본 특성을 식별하기 위한 것이 아니며, 본 발명의 청구사항의 범주를 제한하는데에 사용하고자 하는 의도가 없다. 또한, 본 발명의 청구사항은 본 명세서의 임의의 부분에서 언급되는 어떤 단점 또는 모든 단점들을 해결하는 실시예로 한정되지 않는다.
본 발명에 따르면 비디오 서명(video signature)을 찾기 위한 방법이 제공된다. 이 방법은 비디오의 프레임 N, 프레임 N+1 및 프레임 N-1 각각을 복수의 셀로 분할하는 단계와, 각 프레임의 각 셀에 대해 비디오 속성(video attribute)을 계산하는 단계를 포함한다. 차 메트릭(difference metric)이 각 프레임의 비디오 속성에 기초하여 프레임 N과 프레임 N-1 및 프레임 N과 프레임 N+1 사이에서 계산되고, 차 메트릭은 문턱값과 비교된다. 만약 프레임 N과 프레임 N+1의 차 메트릭이 제 1 문턱값을 초과하고 프레임 N과 프레임 N-1의 차 메트릭이 제 2 문턱값을 초과하지 않으면, 프레임 N과 프레임 N+1로부터의 정보가 비디오 서명으로서 사용된다.
도 1은 본 발명의 일 실시예에 따른 비디오 스트림의 서명을 찾기 위한 방법을 도시한 순서도이다.
도 2는 본 발명의 일 실시예에 따른 비디오로부터의 프레임 및 연관된 휘도값(luminance value)를 개략적으로 도시한 도면이다.
도 3은 기준 서명(reference signature)을 검색 인덱스 데이터베이스에 입력하는 예시적인 실시예를 도시한 순서도이다.
도 4는 클라이언트 서명(client signature)을 검색 인덱스에 입력하는 예시적인 실시예를 도시한 순서도이다.
도 5는 본 명세서에 개시된 실시예들을 실행하기 위한 비한정적 컴퓨팅 디바이스를 개략적으로 도시한 도면이다.
만족스러운 뷰 체험을 위해 비디오의 타이틀, 생산 일자 및 그 밖의 다른 정보가 뷰어에게 필요로 할 수 있기 때문에, 외부 식별 정보가 없는 디지털 비디오와 같은 미디어 콘텐츠의 재생은 문제점을 나타낼 수 있다. 알려지지 않은 비디오에 대한 식별 정보를 찾아내기 위해, 비디오 내의 장면 전환(shot change)을 식별함으로써 비디오 서명이 생성될 수 있다. 장면 전환은 프레임 N과 그 앞의 프레임 N-1 사이의 이미지 정보에서의 작은 변화와 함께, 비디오의 두 개의 연속적인 프레임 N과 프레임 N+1 사이의 이미지 정보에서의 큰 변화에 의해서 정의될 수 있다. 장면 전환으로부터의 정보가 비디오 서명을 생성하는데 사용될 수 있다. 비디오 서명은 동일한 비디오의 다른 버전에 대해 쉽게 재생산가능할 수 있다.
이러한 비디오 서명은 기준 비디오의 라이브러리에 대한 비디오 서명뿐 아니라 각각의 이러한 기준 비디오에 대한 식별 정보(예컨대, 메타데이터)를 포함하는 비디오 서명 데이터베이스와 비교될 수 있다. 만약 일치함(match)이 발견되면, 일치하는 기준 비디오로부터의 외부 식별 정보가 알려지지 않은 비디오에 적용될 수 있다. 일부 실시예에서, 테스트되는 서명과 기준 서명 사이의 유클리디안 거리(Euclidean distance)가 일치함이 존재하는지 여부를 판단하는 데에 사용될 수 있다. 일부 실시예에서, 이러한 유클리디안 거리는 0이어야만 하며, 다른 실시예에서는 작은 차이가 허용될 수 있다.
도 1은 본 발명의 일 실시예에 따라 비디오 서명을 찾는 방법(100)을 묘사하는 순서도를 도시한다. 방법(100)은 비디오 스트리밍 및/또는 비디오 재생을 할 수 있는 컴퓨팅 디바이스에 의해 실행될 수 있다. 예시적인 컴퓨팅 디바이스는 데스크톱 컴퓨터, 랩탑 컴퓨터, 모바일 컴퓨팅 디바이스 및 TV 셋톱 박스를 포함하지만 이것으로 한정되지는 않는다. 컴퓨팅 디바이스는 비디오 서명 데이터베이스로의 액세스 및/또는 비디오 스트림 수신을 위해 네트워크 상에서 다른 컴퓨팅 디바이스에 추가로 접속될 수 있으며, 이것은 아래에서 보다 상세하게 기술될 것이다. 컴퓨팅 디바이스에 대한 추가적인 세부사항이 도 5를 참조로 하여 기술될 것이다.
단계(102)에서, 방법(100)은 비디오 내의 프레임들을 복수의 셀로 분할하는 것을 포함한다. 일련의 프레임 N, 프레임 N+1 및 프레임 N-1의 각 프레임은 M개의 셀로 분할된다. 일 예시에서, M개의 셀은 4×4 그리드로 배열된 16개의 동일한 크기의 셀을 포함할 수 있다. 다른 예시에서, M개의 셀은 5×5 그리드로 배열된 25개의 동일한 크기의 셀을 포함할 수 있다. 임의의 배열 내의 임의의 수의 셀이 본 발명의 범주에 포함된다.
단계(104)에서는 각 셀에 대한 비디오 속성이 계산된다. 일부 실시예에서, 비디오 속성은 셀 내의 각 픽셀에 대한 휘도값(luminance value)을 평균화하여 계산된 해당 셀에 대한 평균 휘도이다. 일부 실시예에서, 비디오 속성은 해당 프레임의 모든 셀에 대한 평균 휘도와 관련하여 정규화된 해당 셀에 대한 평균 휘도일 수 있다. 각 셀의 휘도의 순위, 평균 색상 값 등과 같은 다른 적절한 속성이 사용될 수 있다.
단계(106)에서, 제 1 차 메트릭(a first difference metric)이 프레임 N과 프레임 N+1 사이에서 계산된다. 예시로서, 차 메트릭은 프레임 N에 대해 계산된 벡터 및 프레임 N+1에 대해 계산된 벡터 사이의 유클리디언 거리(Euclidean distance)일 수 있다. 단계(108)에서, 이러한 차 메트릭을 계산하기 위해, 프레임 N 및 프레임 N+1의 각각에 대한 M차원 벡터가 결정된다. 각 프레임에 대한 M차원 벡터는, 각각의 서로 다른 차원에 대해서, 해당 프레임으로부터의 서로 다른 셀의 비디오 속성을 포함한다.
예를 들어, 도 2는 16개의 셀(즉, 셀 N1, N2, ... N16)을 포함하는 4×4 그리드로 분할된 비디오의 프레임 N을 도시한다. 또한, 도 2의 테이블(204)은 프레임 N의 각 셀에 대한 휘도값을 도시한다. 각각의 셀에 대해서, 평균 휘도가 해당 셀의 각 픽셀에 대한 휘도값으로부터 계산된다. 이러한 예시에서, 휘도는 0으로부터 1까지의 스케일에 의해 표현되는데, 이때 0은 휘도가 없는 것이고(즉, 셀이 전부 검정색이거나 빛이 방출되지 않음) 1은 최대 휘도임을 나타낸다(즉, 셀이 전부 흰색이거나 픽셀이 방출할 수 있는 최대량의 빛이 방출되고 있음). 예를 들어, 셀 N1은 0.2의 휘도값을 갖는다. M차원 벡터는 분할된 프레임의 16개의 셀 각각에 대한 휘도에 기초하여 16차원 벡터를 포함할 수 있다. 예를 들어, 프레임 N은:
Figure 112013089579747-pct00001
을 포함하는 16차원 벡터를 가질 수 있는 반면, 프레임 N+1은 휘도값의 테이블(206)에 기초하여,
Figure 112013089579747-pct00002
을 포함하는 16차원 벡터를 가질 수 있다.
다시 도 1을 참조하면, 방법(100)은 벡터들 사이의 유클리디언 거리를 계산하는 것을 포함한다. 예를 들면, 도 2의 프레임 N과 프레임 N+1 사이의 유클리디언 거리는 아래의 식을 이용하여 계산될 수 있으며:
Figure 112013089579747-pct00003
이때 p는 프레임 N에 대한 벡터이고, q는 프레임 N+1에 대한 벡터이며, 벡터들이 16차원을 포함하기 때문에 n=16이다. 따라서, 도 2의 프레임 N과 프레임 N+1 사이의 유클리디언 거리는 대략 1.21이 될 것이다.
다시 도 1을 참조하면, 단계(112)에서 제 2 차 메트릭이 프레임 N과 프레임 N-1 사이에서 계산된다. 단계(106)에서 계산된 차 메트릭과 유사하게, 단계(114)에서 프레임 N과 프레임 N-1 각각에 대해 M차원 벡터가 결정되며, 이들 벡터들은 단계(116)에서 제 2 유클리디언 거리를 결정하는 데에 사용된다.
단계(118)에서, 프레임 N과 프레임 N+1 사이에서 계산되는 제 1 차 메트릭이 제 1 문턱값과 비교된다. 만약 제 1 차 메트릭이 제 1 문턱값보다 위에 있다면, 방법은 단계(120)로 진행한다. 만약 문턱값 위에 있지 않다면, 이 방법은 단계(128)로 진행한다. 단계(120)에서 제 2 차 메트릭이 제 2 문턱값에 비교된다. 만약 제 2 차 메트릭이 제 2 문턱값 아래에 있다면, 방법은 단계(122)로 진행하고, 만약 아래에 있지 않다면, 방법은 단계(128)로 진행한다. 제 1 및 제 2 차 메트릭을 비교하기 위한 제 1 및 제 2 문턱값은 유사할 수 있다. 이와 달리, 두 문턱값들은 상이할 수도 있다. 문턱값들은 경험적으로 또는 임의의 적절한 메커니즘에 의해서 결정될 수 있다.
도 2에 도시된 예시적인 프레임을 참조하면, 프레임들이 동일한 이미지를 묘사하기 때문에, 프레임 N-1에 대해 테이블(202) 내의 휘도값에 기초한 16차원 벡터가 프레임 N에 대한 벡터와 동일할 수 있다. 따라서, 앞서 기술된 것과 동일한 식을 이용하여 계산된 유클리디안 거리는 프레임 N과 프레임 N-1 사이의 거리가 0이 되게 할 수 있다.
프레임들이 장면 전환되는지 여부를 판정하기 위해서, 계산된 유클리디안 거리가 문턱값과 각각 비교될 수 있다. 이 예에서는, 제 1 및 제 2 문턱값이 동일하며, 경험적으로 1로 결정된다. 따라서, 프레임 N으로부터 프레임 N+1까지의 거리인
Figure 112013089579747-pct00004
=1.21인데, 이값은 제 1 문턱값인 1보다 크다. 프레임 N으로부터 프레임 N-1까지의 거리인
Figure 112013089579747-pct00005
=0이며, 이값은 이 경우에 역시 1인 제 2 문턱값보다 작다. 제 1 거리가 문턱값보다 크고 제 2 거리는 그렇지 않기 때문에, 장면 전환이 식별된다.
도 1의 단계(122)에서, 프레임 N과 프레임 N+1 중 하나 또는 둘 모두로부터의 정보가 비디오 서명으로서 포함된다. 프레임 N의 벡터는 단계(124)에서 프레임 N+1의 벡터와 연결되어 서명을 생성할 수 있는데, 이 실시예에서 이 서명은 프레임 N 및 프레임 N+1에 대한 휘도값에 기초하여 32차원 벡터이다. 단계(126)에서, 서명은 장면 전환이 발생하는 비디오의 시작점과 관련된 시간을 나타내는 타임스탬프와 연결된다. 그 다음 이 서명은 사전결정된 서명의 데이터베이스에 제출될 수 있고/있거나 서명이 일치하는 기준 서명을 검색하기 위해 검색 인덱스에 입력될 수도 있다. 예를 들어, 만약 비디오가 식별 정보를 저장하는 알려진 비디오라면, 서명은 알려지지 않은 비디오에 대한 일치성을 위해 데이터베이스를 검색할 때와 같이 이후의 사용을 위해 식별 정보와 함께 기준 비디오 서명 데이터베이스에 제출될 수 있다. 이와 달리, 만약 비디오가 식별 정보를 포함하지 않은 알려지지 않은 비디오라면, 생성된 서명은 기준 비디오 서명 데이터베이스로부터 알려진 기준 비디오 내에 포함된 일치하는 서명에 대해 검색하기 위해 검색 인덱스에 입력될 수 있다.
방법(100)은 단계(128)에서 비디오 내의 다른 서명을 식별하도록 테스트가 계속되어야만 한다고 결정되면, 후속하는 프레임들을 반복적으로 테스트하도록 진행할 수 있다. 사실상 추가적인 테스트가 계속되어야만 하는지를 결정하기 위해 임의의 기준이 사용될 수 있다. 예를 들어, 이러한 테스트는 비디오의 종료에 도달하거나 사용자가 테스트가 종료되어야만 한다고 표시하지 않는 한 계속될 수 있다. 만약 테스트가 계속된다면, 이 방법은 단계(130)에서 하나의 프레임을 진행시키고, 루프는 방법(100)의 시작으로 돌아간다. 또한, 만약 제 1 또는 제 2 차 메트릭 중 하나가 단계(118) 및 단계(120)에서의 문턱값과 관련된 각각의 조건을 만족시키지 않으면 하나의 프레임이 통과될 수 있고, 방법은 후속하는 프레임을 반복적으로 테스트할 수 있다. 후속하는 테스트에 대한 일부 단계들이 이전의 테스트로부터 반복되어야할 필요가 없을 수도 있음을 이해해야만 한다. 예를 들어, 만약 테스트된 프레임들 중 하나가 이미 분할되어 해당 프레임에 대한 M차원의 행렬이 발견되었다면, 이러한 분할 및 계산은 반복될 필요가 없다.
이와 달리, 만약 테스트가 반복되지 않아야 한다고 결정되면(예컨대, 비디오 내의 모든 서명이 식별되면), 방법은 종료된다.
방법(100)이 본 명세서에 기술된 순서대로 실행되어야 할 필요가 없음을 이해해야만 한다. 예를 들어, 프레임 N과 프레임 N-1 사이의 차 메트릭은, 프레임 N과 프레임 N+1 사이의 차 메트릭의 계산에 앞서, 계산 후에, 또는 동시에 계산될 수 있다. 유사하게, 문턱값과 제 1 차 메트릭의 비교는 문턱값과 제 2 차 메트릭의 비교에 앞서, 비교 후에, 또는 동시에 일어날 수 있다.
동일한 크기의 셀들의 격자의 평균 휘도값을 이용함으로써, 비디오에 조작이 이루어지는 경우에 장면 전환이 식별될 수 있다. 예를 들어, 인터넷 상에서 배포된 비디오에서 대비, 휘도 등이 비디오 소스 원본으로부터 변형되는 경우가 일반적이다. 전체 프레임에 대한 평균 휘도에 대해 정규화된 각 셀에 대한 평균 휘도를 활용함으로써, 상대적인 휘도에서의 차이가 고려될 수 있다. 또한, 속도가 빨라지거나 느려진 비디오 역시 식별될 수 있도록 장면 전환의 식별은 비디오의 타이밍에 의존하지 않는다. 마지막으로, 비디오 클립이 적어도 하나의 장면 전환을 포함하는 한, 비디오의 클립들 또한 식별될 수 있다.
장면 전환을 식별하고 서명을 생성하는 프로세스는, 식별 정보를 포함하는 비디오 콘텐츠뿐 아니라 식별 정보를 포함하지 않는 비디오 콘텐츠 상에서 수행될 수 있다. 알려진 비디오로부터의 비디오 서명은 기준 데이터베이스 내의 비디오와 연관될 수 있다. 이러한 데이터베이스를 검색하는 일 예시적인 방법은 LSH(Locality Sensitive Hashing)을 포함한다. 이 방법에서, 각각의 기준 서명에게는 해시 코드(hash code)라고 불리는 코드가 주어지며, 각 해시 코드는 해시 테이블의 버킷들로 분산된다. 알려지지 않은 비디오 서명 또는 클라이언트 서명 또한 해시 코드가 주어진다. 클라이언트 서명이 분산되는 버킷은 합리적으로 클라이언트 서명과 유사한 기준 서명만을 포함한다. 이로부터, 유클리디안 거리와 같은 차 메트릭이, 클라이언트 서명과 기준 서명 사이에서 계산될 수 있다.
기준 비디오 서명에 대한 해시 코드를 생성하는 예시적인 방법(300)이 도 3을 참조하여 기술되었다. 단계(302)에서, 방법(300)은 n개의 랜덤 벡터(v1, v2, ... vn)의 세트를 생성하는 것을 포함하며, 그 성분은 독립적이고 동등하게 분산된 정상 랜덤 변수여야만 한다. n개의 랜덤 벡터는 한번에 생성될 수 있고, 단계(304)에서 그 세트는 생성되는 모든 서명에 대한 해시 코드를 결정하도록 사용될 수 있다. 아래의 비한정적인 예시가 4×4 격자로 분할된 프레임들에 상응하는 32차원 벡터를 참조로 하여 기술될 것이다.
단계(306)에서 해시 Hi가 각 랜덤 벡터에 대해 결정된다. 각 Hi는 아래의 식을 이용하여 계산될 수 있으며:
Figure 112013089579747-pct00006
이때 S는 32차원 기준 서명이고, vi는 32차원 랜덤 벡터이며, B는 경험적으로 판단될 수 있는 버킷 사이즈이다. 큰 B는 더욱 신뢰가능한 검색 결과를 생산할 수 있지만, 이는 해시 버킷의 크기를 증가시키며, 따라서 버킷 내의 서명의 증가된 수로 인해 해당 버킷 내에서 검색을 수행하는 데에 시간이 필요하다. 단계(308)에서, 해시는 해시 코드를 획득하기 위해 이진수로 변환될 수 있다. i=1, 2, ... n에 대해 Hi가 결정되며, 단계(310)에서 수퍼 해시 코드 H를 획득하기 위해서 모두 이진수로 변환되어 연결된다. 방법(300)은, 단계(312)에서 서명이 발생하는 비디오로부터의 타임스탬프, 비디오의 타이틀 등과 같은 태그에 따라 각각의 수퍼 해시 코드를 기준 해시 테이블의 버킷으로 인덱싱하는 것을 포함한다. 만약 단계(314)에서 보다 많은 기준 서명이 해시될 예정이라면, 프로세스는 스스로 반복된다.
도 4는 일치하는 기준 서명을 찾기 위해서 알려지지 않은 서명, 또는 클라이언트 서명을 검색 인덱스에 입력하는 방법(400)의 실시예를 도시한 순서도를 묘사한다. 방법(400)은 단계(402)에서 클라이언트 서명에 대한 질의 해시 코드를 결정하는 것을 포함한다. 도 3을 참조로 하여 기술된 방법과 유사하게, 해시는 단계(406)에서 세트의 각 랜덤 벡터에 대해서, 클라이언트 서명, 랜덤 벡터(단계(302)에서 생성된 세트로부터 단계(404)에서 검색됨) 및 버킷 크기에 기초하여 결정된다. 각 해시 코드는 단계(408)에서 이진수로 변환되고, 클라이언트 서명에 대한 질의 수퍼 해시 코드 H'를 생성하기 위해서 단계(410)에서 모든 이진 해시 코드가 연결된다. 질의 수퍼 해시 코드 H'는 기준 해시 테이블의 버킷에 할당되고, 그 버킷 내에 저장된 모든 기준 해시들이 단계(412)에서 반환된다. 단계(414)에서 유클리디안 거리와 같은 차 메트릭이 클라이언트 서명과 버킷 내의 각 기준 서명 사이에서 계산될 수 있다. 단계(416)에서, 문턱값 아래의 유클리디안 거리를 갖는 모든 기준 서명이 일치(match)로서 반환될 수 있다. 만약 단계(418)에서 일치함이 존재하지 않으면, 방법은 단계(424)로 진행할 수 있다. 만약 단계(420)에서 하나보다 많은 일치가 존재하면, 서명은 상업적 콘텐츠와 같은 일반적인 콘텐츠로부터 파생하는 것으로 간주될 수 있거나, 또는 낮은 품질의 서명으로 간주될 수 있으며, 따라서 이 방법은 단계(424)로 진행할 수 있다. 만약 단계(418, 420)에서 오직 하나의 일치가 존재한다고 판단되면, 클라이언트 서명과 기준 서명이 동일한 비디오로부터 파생되었을 가능성이 높다. 이러한 경우에, 단계(422)에서 클라이언트 비디오는 기준 비디오로서 식별될 수 있으며, 타이틀, 데이터 등과 같이 기준 비디오를 수반하는 정보가 클라이언트 비디오에 추가될 수 있다. 단계(424)에서, 방법(400)은 보다 많은 일치에 대해 비디오 내에서 서명 검색을 계속하는 것이 필요한지 여부를 판단하는 것을 포함한다. 예를 들어, 만약 처음에 일치함을 찾을 수 없었거나 또는 복수의 일치함이 발견된 경우였으면, 비디오 내의 추가적인 클라이언트 서명에 대한 일치성을 계속 검색하는 것이 필요할 수 있다. 만약 검색이 계속되어야만 한다고 판단되면, 방법(400)은 단계(426)에서 다음 서명으로 진행하고 방법(400)의 시작으로 다시 루프백 한다.
또한, 클라이언트 서명과 기준 서명 사이의 차 메트릭을 넘는 일치의 정확성이 증가될 수 있다. 이것은 비디오 내의 하나보다 많은 클라이언트 서명이 비디오로부터의 기준 서명과 일치함을 입증함으로써 달성될 수 있다. 또한, 만약 복수의 일치하는 서명이 알려진 비디오와 알려지지 않은 비디오 사이에서 발견된다면, 기준 비디오 내의 두 서명으로부터의 타임스탬프들 간의 차이 대 클라이언트 비디오의 동일한 두 서명의 타임스탬프 사이의 차이를 상관시킴으로써 정확도가 추가로 입증될 수 있다. 도 1과 관련하여 전술된 바와 같이, 타임스탬프는 비디오 서명과 연관될 수 있다. 클라이언트 비디오 콘텐츠가 기준 비디오와 비교하여 변경될 수 있기 때문에, 클라이언트 비디오가 단축되거나 추가 비디오 정보를 포함할 경우 절대 시간 상관을 이용하는 것은 입증의 명확한 방법이 아닐 수 있다. 그러나, 만약 두 타임스탬프 사이의 차이가 사용되면, 정확한 상관이 이루어질 수 있다. 예를 들어, 기준 비디오의 제 1 비디오 서명은 타임스탬프 1:35와 연관될 수 있고 기준 비디오의 제 2 비디오 서명은 1:50과 연관될 수 있다. 이 예시에서, 둘 사이의 차이는 0:15이다. 만약 클라이언트 비디오가 2:15의 타임스탬프를 갖는 제 1 기준 서명과 일치하는 서명 및 2:30의 타임스탬프를 갖는 제 2 기준 서명과 일치하는 제 2 서명을 갖는다면, 두 개의 일치 서명이 존재하고 서명들의 타임스탬프 간의 차이가 동일하기 때문에 일치성이 정확할 가능성이 높다.
일부 실시예에서, 전술된 방법 및 프로세스가 하나보다 많은 컴퓨터를 포함하는 컴퓨팅 시스템과 관련될 수 있다. 특히, 본 명세서에 기술된 방법 및 프로세스는 컴퓨터 애플리케이션, 컴퓨터 서비스, 컴퓨터 API, 컴퓨터 라이브러리 및/또는 컴퓨터 프로그램 제품으로서 구현될 수 있다.
도 5는 전술된 하나 이상의 방법 및 프로세스를 수행할 수 있는 비제한적인 컴퓨팅 시스템(502)을 개략적으로 도시한다. 컴퓨팅 시스템(502)은 단순화된 형태로 도시되었다. 사실상 임의의 컴퓨터 아키텍처가 본 발명의 범주로부터 벗어나지 않고 사용될 수 있음을 이해해야 한다. 다른 실시예에서, 컴퓨팅 시스템(502)은 메인프레임 컴퓨터, 서버 컴퓨터, 데스크톱 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 홈 엔터테인먼트 컴퓨터, 네트워크 컴퓨팅 디바이스, 모바일 컴퓨팅 디바이스, 모바일 통신 디바이스, 게임 디바이스 등의 형태를 취할 수 있다.
컴퓨팅 시스템(502)은 로직 서브시스템(logic subsystem)(504) 및 데이터 보유 서브시스템(data-holding subsystem)(506)을 포함한다. 컴퓨팅 시스템(502)은 선택적으로 디스플레이 서브시스템(508), 통신 서브시스템(510), 및/또는 도 5에 도시되지 않은 다른 구성요소를 포함할 수 있다. 컴퓨팅 시스템(502)은 또한 예를 들어 키보드, 마우스, 게임 컨트롤러, 카메라, 마이크로폰, 및/또는 터치 스크린과 같은 사용자 입력 디바이스(512)를 선택적으로 포함할 수 있다.
컴퓨팅 시스템(502)은 네트워크(516) 상에서의 서버(514)와 같은 원격 컴퓨팅 디바이스와 통신하도록 구성될 수 있다. 컴퓨팅 시스템(502)과 유사하게, 서버(514)는 로직 서브시스템(518) 및 데이터 보유 서브시스템(520)을 포함한다. 서버(514)는 사용자에 의한 뷰를 위해 비디오 스트림을 컴퓨팅 시스템(502)으로 전송할 수 있다. 만약 비디오 스트림이 식별 정보를 갖지 않는다면, 비디오 스트림은 도 1 및 2를 참조로 하여 기술된 바와 같이, 비디오 서명을 위해 검색될 수 있다. 또한 서버(514) 또는 다른 서버가 비디오 서명에 대해 기준 비디오를 검색할 수 있고 또한 태그된 기준 서명을 저장하기 위해 기준 서명 데이터베이스(522)를 활용할 수 있다. 이와 달리, 기준 서명 데이터베이스(524)는 서버로부터 원격으로 저장될 수 있고 서버는 네트워크 상에서 데이터베이스에 액세스할 수 있다.
해시 테이블의 분산 성질로 인해서, 서버(514)의 업무는 서버들의 분산된 네트워크로 분할될 수 있다. 이러한 경우에, 컴퓨팅 시스템(502)과 통신하고 들어오는 서명 일치 요청에 대한 해시 값에 의존하여 몇몇 서버들 중 하나에 일치되는 서명을 위임하는 로드 밸런서(load balancer)가 존재할 수 있다. 각 서버는 해시 테이블로부터의 소정의 해시 버킷에 상응하는 데이터베이스의 서브셋을 호스팅할 것이다. 전체 해시 테이블이 분산된 시스템을 통해 나타내어지도록, 각 서버가 보유하는 해시 버킷이 내에서 선택적으로 오버랩이 존재할 수 있지만, 각 해시 버킷은 일부 서버에 의해 보유될 것이다.
로직 서브시스템(504)은 하나 이상의 명령을 실행하도록 구성된 하나 이상의 물리적 디바이스를 포함할 수 있다. 예를 들어, 로직 서브시스템은 하나 이상의 애플리케이션, 서비스, 프로그램, 루틴, 라이브러리, 객체, 구성요소, 데이터 구조, 또는 다른 논리적 구조의 일부인 하나 이상의 명령을 실행하도록 구성될 수 있다. 이러한 명령은 태스크를 수행하고, 데이터 유형을 구현하고, 하나 이상의 디바이스의 상태를 변형하고, 또는 그외의 원하는 결과에 도달하기 위해 구현될 수 있다.
로직 서브시스템은 소프트웨어 명령을 실행하도록 구성된 하나 이상의 프로세서를 포함할 수 있다. 이에 더하여 또는 이와 달리, 로직 서브시스템은 하드웨어 또는 펌웨어 명령을 실행하도록 구성된 하나 이상의 하드웨어 또는 펌웨어 로직 머신을 포함할 수 있다. 로직 서브시스템의 프로세서는 단일 코어 또는 멀티코어일 수 있으며, 그 위에서 실행되는 프로그램들은 병렬 또는 분산 처리를 위해 구성될 수 있다. 로직 서브시스템은 원거리에 위치되고/되거나 조직화된 프로세싱을 위해 구성될 수 있는 둘 이상의 디바이스에 걸쳐 분산된 개별적인 구성요소를 선택적으로 포함할 수 있다. 로직 서브시스템의 하나 이상의 측면은 클라우드 컴퓨팅 구성 내에 구성되는 원격 액세스 가능한 네트워킹된 컴퓨팅 디바이스에 의해 가상화되고 실행될 수 있다.
데이터 보유 서브시스템(506)은 본 명세서에 기술된 방법 및 프로세스를 구현하도록 로직 서브시스템에 의해 실행가능한 명령 및/또는 데이터를 보유하도록 구성된 하나 이상의 물리적인 비일시적 디바이스를 포함할 수 있다. 이러한 방법 및 프로세스가 구현될 때, 데이터 보유 서브시스템(506)의 상태는 (예컨대, 다른 데이터를 보유하도록) 변환될 수 있다.
데이터 보유 서브시스템(506)은 제거가능한 매체 및/또는 내장 디바이스를 포함할 수 있다. 데이터 보유 서브시스템(506)은 광학적 메모리 디바이스(예컨대, CD, DVD, HD-DVD, Blu-Ray 디스크 등), 반도체 메모리 디바이스(예컨대, RAM, EPROM, EEPROM 등), 및/또는 자기적 메모리 디바이스(예컨대, 하드 디스크 드라이브, 플로피 디스크 드라이브, 테이프 드라이브, MRAM 등)를 포함할 수 있다. 데이터 보유 서브시스템(506)은, 휘발성, 비휘발성, 동적, 정적, 판독/기록, 판독 전용, 랜덤 액세스, 순차적 액세스, 위치 어드레스 가능, 파일 어드레스 가능 및 콘텐츠 어드레스 가능과 같은 특징들 중 하나 이상을 갖는 디바이스를 포함할 수 있다. 일부 실시예에서, 로직 서브시스템(504) 및 데이터 보유 서브시스템(506)은 애플리케이션 특정 집적 회로 또는 SoC(system on a chip)과 같은 하나 이상의 일반적인 디바이스에 집적될 수 있다.
도 5는 또한 제거가능한 컴퓨터 판독가능 저장 매체(526)의 형태에서 데이터 보유 서브시스템의 측면을 도시하였으며, 이는 본 명세서에 기술된 방법 및 프로세스를 구현하도록 실행가능한 명령 및/또는 데이터를 저장 및/또는 이동시키기 위해 사용될 수 있다. 제거가능한 컴퓨터 판독가능 저장 매체(526)는 CD, DVD, HD-DVD, Blu-Ray 디스크, EEPROM, 및/또는 플로피 디스크의 형태를 취할 수 있다.
데이터 보유 서브시스템(506)이 하나 이상의 물리적인 비일시적 디바이스를 포함한다는 것을 이해할 것이다. 반면에, 일부 실시예에서, 본 명세서에 기술된 명령의 측면은 적어도 한정적인 기간 동안 물리적 디바이스에 의해 보유되지 않는 순수 신호(예컨대, 전자기 신호, 광학 신호 등)에 의해 일시적인 방식으로 전파될 수 있다. 또한, 본 발명과 관련된 데이터 및/또는 다른 형태의 정보가 순수 신호에 의해 전파될 수 있다.
"모듈," "프로그램," 및 "엔진"과 같은 용어는, 하나 이상의 특정한 기능을 수행하도록 구현되는 컴퓨팅 시스템(502)의 측면을 기술하도록 사용될 수 있다. 일부 경우에, 이러한 모듈, 프로그램, 또는 엔진은 데이터 보유 서브시스템(506)에 의해 보유되는 명령을 실행하는 로직 서브시스템(504)을 통해 예시될 수 있다. 서로 다른 모듈, 프로그램, 및/또는 엔진이 동일한 애플리케이션, 서비스, 코드 블록, 객체, 라이브러리, 루틴, API, 기능 등으로부터 예시될 수 있음이 이해될 것이다. 유사하게, 동일한 모듈, 프로그램, 및/또는 엔진은 상이한 애플리케이션, 서비스, 코드 블록, 객체, 루틴, API, 기능 등에 의해 예시될 수 있다. "모듈," "프로그램" 및 "엔진"이라는 용어는 실행가능한 파일, 데이터 파이, 라이브러리, 드라이버, 스크립트, 데이터베이스 기록 등의 그룹 또는 이들 각각을 포함하는 것이다.
본 명세서에서 사용되는 "서비스"가 하나 이상의 시스템 구성요소, 프로그램, 및/또는 다른 서비스에서 이용가능하고 복수의 사용자 세션에 걸쳐 실행가능한 애플리케이션 프로그램일 수 있음을 이해할 것이다. 일부 구현에서, 서비스는 클라이언트로부터의 요청에 응답하여 서버 상에서 실행할 수 있다.
디스플레이 서브시스템(508)이 포함되는 경우, 이는 데이터 보유 서브시스템(506)에 의해 보유되는 데이터의 시각적 표현을 제시하도록 사용될 수 있다. 본 명세서에 기술된 바와 같이, 방법 및 프로세스는 데이터 보유 서브시스템에 의해 보유되는 데이터를 변화시키고 따라서 데이터 보유 서브시스템의 상태를 변경시키며, 유사하게 디스플레이 서브시스템(508)의 상태는 언더라잉 데이터 내에서의 변화를 시각적으로 나타내도록 변경될 수 있다. 디스플레이 서브시스템(508)은 시각적으로 임의의 유형의 기술을 활용하는 하나 이상의 디스플레이 디바이스를 포함할 수 있다. 이러한 디스플레이 디바이스는 공유 인클로저 내에서 로직 서브시스템(504) 및/또는 데이터 보유 서브시스템(506)과 결합될 수 있거나, 또는 이러한 디스플레이 디바이스는 주변 디스플레이 디바이스일 수 있다.
통신 서브시스템(510)이 포함된 경우, 이는 컴퓨팅 시스템(502)을 서버(514)와 같은 하나 이상의 다른 컴퓨팅 디바이스와 통신가능하게 연결하도록 구성될 수 있다. 통신 서브시스템(510)은 하나 이상의 서로 다른 통신 프로토콜과 호환가능한 유선 및/또는 무선 통신 디바이스를 포함할 수 있다. 비한정적인 예시로서, 통신 서브시스템은 무선 전화 네트워크, 무선 로컬 영역 네트워크, 유선 로컬 영역 네트워크, 무선 광역 네트워크, 유선 광대역 네트워크 등을 통해 통신하도록 구성될 수 있다. 일부 실시예에서, 통신 서브시스템은 컴퓨팅 시스템(502)으로 하여금 인터넷과 같은 네트워크를 통해 다른 디바이스로 및/또는 다른 디바이스로부터 메시지를 전송 및/또는 수신하게 할 수 있다.
본 명세서에 기술된 구성 및/또는 접근법은 예시적이며, 다수의 변형이 가능하기 때문에 이러한 특정 실시예 또는 예시들이 한정적인 것으로 간주되어서는 안된다는 것을 이해해야 한다. 본 명세서에 기술된 특정한 루틴 또는 방법은 하나 이상의 임의의 수의 프로세싱 전력을 나타낼 수 있다. 이렇게, 설명된 다양한 행동들은 설명된 순서대로, 다른 순서대로, 동시에 수행될 수 있고 일부 경우에는 생략될 수도 있다. 유사하게, 전술된 프로세스의 순서도 변경될 수 있다.
본 발명의 청구사항은 다양한 프로세스, 시스템과 구성, 다른 특징들, 기능, 행동, 및/또는 본 명세서에서 기술된 속성뿐 아니라 이들의 임의의 모든 동등물의 모든 신규한 조합 및 하위조합을 포함한다.

Claims (20)

  1. 비디오에 대한 서명을 찾아내는 방법에 있어서,
    상기 비디오의 프레임 N을 복수의 셀들로 분할하는 단계와,
    상기 프레임 N의 각 셀의 비디오 속성을 계산하는 단계와,
    프레임 N+1을 복수의 셀들로 분할하는 단계와,
    상기 프레임 N+1의 각 셀의 비디오 속성을 계산하는 단계와,
    상기 비디오의 프레임 N-1을 복수의 셀들로 분할하는 단계와,
    상기 프레임 N-1의 각 셀의 비디오 속성을 계산하는 단계와,
    상기 복수의 셀들의 각 셀에 대해 상기 프레임 N의 비디오 속성과 상기 프레임 N+1의 비디오 속성 사이의 차(difference)를 포함하는 프레임 N과 프레임 N+1 사이의 차 메트릭(difference metric)을 계산하는 단계와,
    상기 복수의 셀들의 각 셀에 대해 상기 프레임 N의 비디오 속성과 상기 프레임 N-1의 비디오 속성 사이의 차를 포함하는 프레임 N과 프레임 N-1 사이의 차 메트릭을 계산하는 단계와,
    상기 프레임 N과 프레임 N+1 사이의 차 메트릭이 제 1 문턱값을 초과하고 상기 프레임 N과 프레임 N-1 사이의 차 메트릭이 제 2 문턱값을 초과하지 않으면, 상기 프레임 N과 프레임 N+1 중 하나 또는 둘 모두로부터의 정보를 포함하는 비디오 서명을 생성하는 단계
    를 포함하는 비디오 서명을 찾아내는 방법.
  2. 제 1 항에 있어서,
    상기 복수의 셀들은 M개의 셀들을 포함하며, 각 프레임에 대한 M차원 벡터가 상기 복수의 M개의 셀들 각각에 대한 비디오 속성을 포함하는 것인, 비디오 서명을 찾아내는 방법.
  3. 제 2 항에 있어서,
    상기 프레임 N과 프레임 N+1 사이의 차 메트릭을 계산하는 단계는, 상기 프레임 N에 대한 M차원 벡터와 상기 프레임 N+1에 대한 M차원 벡터 사이의 유클리디안 거리(Euclidean distance)를 계산하는 단계를 포함하는 것인, 비디오 서명을 찾아내는 방법.
  4. 제 1 항에 있어서,
    상기 비디오 속성은 해당 셀에 대한 평균 휘도인 것인, 비디오 서명을 찾아내는 방법.
  5. 제 1 항에 있어서,
    상기 비디오 속성은 해당 프레임의 모든 셀들에 대한 평균 휘도에 대하여 정규화된 해당 셀에 대한 평균 휘도인 것인, 비디오 서명을 찾아내는 방법.
  6. 제 1 항에 있어서,
    상기 비디오 서명은 상기 프레임 N+1의 각 비디오 속성과 연결되는(concatenated) 상기 프레임 N의 각 비디오 속성을 포함하는 것인, 비디오 서명을 찾아내는 방법.
  7. 제 1 항에 있어서,
    상기 비디오의 상기 프레임 N을 복수의 셀들로 분할하는 단계는, 상기 프레임 N을 4×4 격자의 셀들로 분할하는 단계를 포함하는 것인, 비디오 서명을 찾아내는 방법.
  8. 제 1 항에 있어서,
    상기 프레임 N+1은 상기 프레임 N 바로 뒤에 오고, 상기 프레임 N-1은 상기 프레임 N 바로 앞에 있는 것인, 비디오 서명을 찾아내는 방법.
  9. 제 1 항에 있어서,
    상기 프레임 N-1은 M개의 셀들로 분할되고, 상기 프레임 N-1에 대한 M차원 벡터는 각 셀에 대한 상기 비디오 속성을 포함하며,
    상기 프레임 N과 프레임 N-1 사이의 차 메트릭을 계산하는 단계는, 상기 프레임 N에 대한 M차원 벡터와 상기 프레임 N-1에 대한 M차원 벡터 사이의 유클리디안 거리를 계산하는 단계를 포함하는 것인, 비디오 서명을 찾아내는 방법.
  10. 제 1 항에 있어서,
    타임스탬프(timestamp)를 상기 비디오 서명과 연관시키는 단계를 포함하는
    비디오 서명을 찾아내는 방법.
  11. 제 1 항에 있어서,
    상기 제 1 문턱값과 상기 제 2 문턱값은 동일한 것인, 비디오 서명을 찾아내는 방법.
  12. 비디오의 서명을 생성하는 방법에 있어서,
    상기 비디오의 프레임 N을, 상기 프레임 N의 각 셀에 대한 평균 휘도값을 포함하는 M개의 셀들의 격자로 분할하는 단계와,
    프레임 N+1을, 상기 프레임 N+1의 각 셀에 대한 평균 휘도 값을 포함하는 M개의 셀들의 격자로 분할하는 단계와,
    프레임 N-1을, 상기 프레임 N-1의 각 셀에 대한 평균 휘도 값을 포함하는 M개의 셀들의 격자로 분할하는 단계와,
    상기 프레임 N, 상기 프레임 N+1 및 상기 프레임 N-1 각각에 대해 M 차원 벡터를 계산하는 단계로서, 각각의 서로 다른 차원에 대해 해당 프레임으로부터의 서로 다른 셀의 휘도 값을 포함하는 것인, M 차원 벡터를 계산하는 단계와,
    상기 프레임 N에 대한 M차원 벡터와 상기 프레임 N+1에 대한 M차원 벡터 사이의 유클리디안 거리를 계산하는 단계와,
    상기 프레임 N에 대한 M차원 벡터와 상기 프레임 N-1에 대한 M차원 벡터 사이의 유클리디안 거리를 계산하는 단계와,
    상기 프레임 N과 프레임 N+1 사이의 유클리디안 거리가 제 1 문턱값을 초과하고 상기 프레임 N과 프레임 N-1 사이의 유클리디안 거리가 제 2 문턱값을 초과하지 않으면, 상기 프레임 N+1의 M차원 벡터와 연결되는 상기 프레임 N에 대한 M차원 벡터를 포함하는 비디오 서명을 생성하는 단계
    를 포함하는 비디오 서명을 생성하는 방법.
  13. 제 12 항에 있어서,
    프레임의 각 셀에 대한 평균 휘도 값은 해당 프레임의 모든 셀들에 대한 평균 휘도에 대하여 정규화되는 것인, 비디오 서명을 생성하는 방법.
  14. 제 12 항에 있어서,
    상기 M개의 셀들의 격자는 4×4 격자를 포함하는 것인, 비디오 서명을 생성하는 방법.
  15. 제 12 항에 있어서,
    상기 비디오 내의 추가 서명을 검색하기 위해 후속 프레임으로 반복적으로 진행하는 단계
    를 더 포함하는 비디오 서명을 생성하는 방법.
  16. 제 12 항에 있어서,
    타임스탬프를 상기 비디오 서명과 연관시키는 단계를 포함하는
    비디오 서명을 생성하는 방법.
  17. 로직 서브시스템(logic subsystem)에 의해 실행 가능한 명령어를 보유하는 데이터 보유 서브시스템(data-honding subsystem)에 있어서, 상기 명령어는 상기 로직 서브시스템에 의해,
    장면 전환(shot change)에 대해 비디오 내의 일련의 세 개의 연속적인 프레임들을 반복적으로 테스트하고,
    다음 장면 전환에 대해 상기 비디오 내의 다음 일련의 세 개의 연속적인 프레임들을 반복적으로 테스트하도록 실행 가능한 것이고,
    각각의 테스트는,
    상기 비디오의 프레임 N을 M개의 셀들을 포함하는 격자로 분할하고,
    상기 프레임 N에 대한 M차원 벡터를 계산하고 - 상기 M차원 벡터는, 상기 M차원 벡터의 각각의 서로 다른 차원에 대해 상기 프레임 N으로부터의 서로 다른 셀의 평균 휘도 값을 포함함 - ,
    상기 비디오의 프레임 N+1을 M개의 셀들을 포함하는 격자로 분할하고,
    상기 프레임 N+1에 대한 M차원 벡터를 계산하고 - 상기 M차원 벡터는, 상기 M차원 벡터의 각각의 서로 다른 차원에 대해 상기 프레임 N+1로부터의 서로 다른 셀의 평균 휘도 값을 포함함 - ,
    상기 비디오의 프레임 N-1을 M개의 셀들을 포함하는 격자로 분할하고,
    상기 프레임 N-1에 대한 M차원 벡터를 계산하고 - 상기 M차원 벡터는, 상기 M차원 벡터의 각각의 서로 다른 차원에 대해 상기 프레임 N-1로부터의 서로 다른 셀의 평균 휘도 값을 포함함 - ,
    상기 프레임 N에 대한 M차원 벡터와 상기 프레임 N+1에 대한 M차원 벡터 사이의 유클리디안 거리를 계산하고,
    상기 프레임 N과 상기 프레임 N+1 사이의 유클리디안 거리가 제 1 문턱값을 초과하면, 상기 프레임 N에 대한 M차원 벡터와 상기 프레임 N-1에 대한 M차원 벡터 사이의 유클리디안 거리를 계산하고,
    상기 프레임 N과 상기 프레임 N-1 사이의 유클리디안 거리가 제 2 문턱값을 초과하지 않으면, 상기 프레임 N+1의 M차원 벡터와 연결된 상기 프레임 N에 대한 M차원 벡터를 포함하는 비디오 서명을 생성하는 것을 포함하는 것인, 데이터 보유 서브시스템.
  18. 제 17 항에 있어서,
    프레임의 각 셀에 대한 평균 휘도 값은 해당 프레임의 모든 셀에 대한 평균 휘도에 대하여 정규화되는 것인, 데이터 보유 서브시스템.
  19. 제 17 항에 있어서,
    각각의 테스트는,
    타임스탬프를 상기 비디오 서명과 연관시키는 것을 더 포함하는 것인, 데이터 보유 서브시스템.
  20. 제 17 항에 있어서,
    상기 격자는 4×4 격자인 것인, 데이터 보유 서브시스템.
KR1020137026097A 2011-04-05 2012-03-23 비디오 서명 KR101921354B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/080,494 2011-04-05
US13/080,494 US8786785B2 (en) 2011-04-05 2011-04-05 Video signature
PCT/US2012/030396 WO2012138491A2 (en) 2011-04-05 2012-03-23 Video signature

Publications (2)

Publication Number Publication Date
KR20140015430A KR20140015430A (ko) 2014-02-06
KR101921354B1 true KR101921354B1 (ko) 2018-11-22

Family

ID=46965845

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137026097A KR101921354B1 (ko) 2011-04-05 2012-03-23 비디오 서명

Country Status (6)

Country Link
US (1) US8786785B2 (ko)
EP (1) EP2695378B1 (ko)
JP (1) JP5980311B2 (ko)
KR (1) KR101921354B1 (ko)
CN (1) CN103460711B (ko)
WO (1) WO2012138491A2 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130020050A (ko) * 2011-08-18 2013-02-27 삼성전자주식회사 로컬리티 센서티브 해시의 버킷 구간 관리 장치 및 그 방법
TWI538492B (zh) * 2012-10-05 2016-06-11 Video clip search method
MY168873A (en) * 2012-12-07 2018-12-04 Mimos Berhad System and method for verifying authenticity of a media content
US9668020B2 (en) * 2014-04-07 2017-05-30 The Nielsen Company (Us), Llc Signature retrieval and matching for media monitoring
US9578394B2 (en) 2015-03-25 2017-02-21 Cisco Technology, Inc. Video signature creation and matching
US10015541B2 (en) * 2015-03-25 2018-07-03 Cisco Technology, Inc. Storing and retrieval heuristics
WO2016151415A1 (en) * 2015-03-25 2016-09-29 Cisco Technology, Inc. Storing and retrieval heuristics
KR102560635B1 (ko) * 2015-12-28 2023-07-28 삼성전자주식회사 컨텐트 인식 장치 및 그 동작 방법
US10338916B2 (en) 2016-12-07 2019-07-02 Sap Se Software version fingerprint generation and identification
CN107071577A (zh) * 2017-04-24 2017-08-18 安徽森度科技有限公司 一种视频传送签名方法
US20190042853A1 (en) * 2017-08-04 2019-02-07 Facebook, Inc. System and Method of Determining Video Content
US10803038B2 (en) * 2017-09-13 2020-10-13 The Nielsen Company (Us), Llc Cold matching by automatic content recognition
US10306333B2 (en) 2017-09-13 2019-05-28 The Nielsen Company (Us), Llc Flagging advertisement frames for automatic content recognition
JP7415242B2 (ja) 2018-03-09 2024-01-17 国立研究開発法人物質・材料研究機構 磁気分離装置
US10911824B2 (en) * 2018-11-05 2021-02-02 The Nielsen Company (Us), Llc Methods and apparatus to generate reference signatures
WO2020152845A1 (ja) * 2019-01-25 2020-07-30 日本電気株式会社 セキュリティ情報分析装置、システム、方法およびプログラム
CN112099725A (zh) * 2019-06-17 2020-12-18 华为技术有限公司 一种数据处理方法、装置及计算机可读存储介质
US20210004833A1 (en) 2019-07-05 2021-01-07 Talkdesk, Inc. System and method for querying multiple information sources using agent assist within a cloud-based contact center
US11328205B2 (en) 2019-08-23 2022-05-10 Talkdesk, Inc. Generating featureless service provider matches
US20210117882A1 (en) 2019-10-16 2021-04-22 Talkdesk, Inc Systems and methods for workforce management system deployment
US20210136220A1 (en) 2019-10-31 2021-05-06 Talkdesk, Inc. Monitoring and listening tools across omni-channel inputs in a graphically interactive voice response system
US11736615B2 (en) 2020-01-16 2023-08-22 Talkdesk, Inc. Method, apparatus, and computer-readable medium for managing concurrent communications in a networked call center
CN112507959A (zh) * 2020-12-21 2021-03-16 中国科学院心理研究所 一种基于视频中个体面部分析的情绪感知模型的建立方法
US11677875B2 (en) 2021-07-02 2023-06-13 Talkdesk Inc. Method and apparatus for automated quality management of communication records
US11856140B2 (en) 2022-03-07 2023-12-26 Talkdesk, Inc. Predictive communications system
US11736616B1 (en) 2022-05-27 2023-08-22 Talkdesk, Inc. Method and apparatus for automatically taking action based on the content of call center communications
US11971908B2 (en) 2022-06-17 2024-04-30 Talkdesk, Inc. Method and apparatus for detecting anomalies in communication data
US11943391B1 (en) 2022-12-13 2024-03-26 Talkdesk, Inc. Method and apparatus for routing communications within a contact center

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010512057A (ja) * 2006-11-30 2010-04-15 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション 信号の信頼できる識別をするためのビデオ及びオーディオ信号内容の特徴の抽出

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4353088A (en) * 1980-05-14 1982-10-05 Oak Industries, Inc. Coding and decoding system for video and audio signals
US4739398A (en) * 1986-05-02 1988-04-19 Control Data Corporation Method, apparatus and system for recognizing broadcast segments
JP3823333B2 (ja) * 1995-02-21 2006-09-20 株式会社日立製作所 動画像の変化点検出方法、動画像の変化点検出装置、動画像の変化点検出システム
US5870754A (en) * 1996-04-25 1999-02-09 Philips Electronics North America Corporation Video retrieval of MPEG compressed sequences using DC and motion signatures
US5767923A (en) * 1996-06-07 1998-06-16 Electronic Data Systems Corporation Method and system for detecting cuts in a video signal
WO2004040475A2 (en) 2002-11-01 2004-05-13 Koninklijke Philips Electronics N.V. Improved audio data fingerprint searching
US20040240562A1 (en) 2003-05-28 2004-12-02 Microsoft Corporation Process and system for identifying a position in video using content-based video timelines
EP1668903A4 (en) 2003-09-12 2011-01-05 Nielsen Media Res Inc DEVICES AND METHOD FOR DIGITAL VIDEO SIGNATURES FOR USE WITH VIDEO PROGRAM IDENTIFICATION SYSTEMS
US7336841B2 (en) * 2004-03-25 2008-02-26 Intel Corporation Fingerprinting digital video for rights management in networks
US8655031B2 (en) 2007-03-27 2014-02-18 Sony Corporation Video content identification using scene change signatures from downscaled images
CN101681373B (zh) 2007-05-17 2012-09-26 杜比实验室特许公司 推导对于画面修改和帧速率转换不敏感的视频签名
US8442384B2 (en) 2007-07-16 2013-05-14 Michael Bronstein Method and apparatus for video digest generation
US9177209B2 (en) * 2007-12-17 2015-11-03 Sinoeast Concept Limited Temporal segment based extraction and robust matching of video fingerprints
JP4924447B2 (ja) * 2008-01-25 2012-04-25 ソニー株式会社 シーン切り替わり点検出器、シーン切り替わり点検出方法、記録装置、イベント生成器、イベント生成方法および再生装置
US20110032984A1 (en) 2008-07-17 2011-02-10 Guy Dorman Methods circuits and systems for transmission of video
US8498487B2 (en) 2008-08-20 2013-07-30 Sri International Content-based matching of videos using local spatio-temporal fingerprints
WO2010049755A1 (en) 2008-10-29 2010-05-06 Nds Limited Video signature
KR101322524B1 (ko) * 2009-01-23 2013-10-28 닛본 덴끼 가부시끼가이샤 화상 시그너처 추출 디바이스

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010512057A (ja) * 2006-11-30 2010-04-15 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション 信号の信頼できる識別をするためのビデオ及びオーディオ信号内容の特徴の抽出

Also Published As

Publication number Publication date
WO2012138491A2 (en) 2012-10-11
US20120257116A1 (en) 2012-10-11
CN103460711A (zh) 2013-12-18
JP5980311B2 (ja) 2016-08-31
JP2014513468A (ja) 2014-05-29
EP2695378B1 (en) 2015-08-05
US8786785B2 (en) 2014-07-22
EP2695378A4 (en) 2014-09-24
EP2695378A2 (en) 2014-02-12
WO2012138491A3 (en) 2013-01-10
CN103460711B (zh) 2017-03-22
KR20140015430A (ko) 2014-02-06

Similar Documents

Publication Publication Date Title
KR101921354B1 (ko) 비디오 서명
JP6891170B2 (ja) ステムリソース利用を最適化するための映像セグメントの将来の視聴予測
US10185768B2 (en) Systems and methods for addressing a media database using distance associative hashing
CA2906199C (en) Systems and methods for addressing a media database using distance associative hashing
AU2016250276B2 (en) Systems and methods for reducing data density in large datasets
US20140201772A1 (en) Systems and methods for addressing a media database using distance associative hashing
US9185338B2 (en) System and method for fingerprinting video
EP3001871B1 (en) Systems and methods for addressing a media database using distance associative hashing
US20140193027A1 (en) Search and identification of video content
US8468146B2 (en) System and method for creating search index on cloud database
US20180286458A1 (en) Generating a video presentation to accompany audio
CN107426610B (zh) 视频信息同步方法及装置
US20230224528A1 (en) Method of processing video stream, computer device, and medium
Assent et al. Speeding up complex video copy detection queries
US20170357654A1 (en) Using audio and video matching to determine age of content
NZ735930B2 (en) Systems and methods for reducing data density in large datasets

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right