KR20170024489A - 워터마크 데이터 삽입 방법, 장치 및 시스템 - Google Patents

워터마크 데이터 삽입 방법, 장치 및 시스템 Download PDF

Info

Publication number
KR20170024489A
KR20170024489A KR1020150119822A KR20150119822A KR20170024489A KR 20170024489 A KR20170024489 A KR 20170024489A KR 1020150119822 A KR1020150119822 A KR 1020150119822A KR 20150119822 A KR20150119822 A KR 20150119822A KR 20170024489 A KR20170024489 A KR 20170024489A
Authority
KR
South Korea
Prior art keywords
data
watermark
image data
watermark data
image
Prior art date
Application number
KR1020150119822A
Other languages
English (en)
Other versions
KR102094510B1 (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 KR1020150119822A priority Critical patent/KR102094510B1/ko
Priority to US15/207,945 priority patent/US9947066B2/en
Priority to PCT/KR2016/007655 priority patent/WO2017034155A1/en
Priority to EP16839445.0A priority patent/EP3286720A4/en
Priority to CN201610730014.8A priority patent/CN106488266B/zh
Publication of KR20170024489A publication Critical patent/KR20170024489A/ko
Application granted granted Critical
Publication of KR102094510B1 publication Critical patent/KR102094510B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23892Multiplex stream processing, e.g. multiplex stream encrypting involving embedding information at multiplex stream level, e.g. embedding a watermark at packet level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0065Extraction of an embedded watermark; Reliable detection

Landscapes

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

Abstract

본 개시는 센서 네트워크(Sensor Network), 사물 통신(Machine to Machine, M2M), MTC(Machine Type Communication) 및 사물 인터넷(Internet of Things, IoT)을 위한 기술과 관련된 것이다. 본 개시는 상기 기술을 기반으로 하는 지능형 서비스(스마트 홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 헬스 케어, 디지털 교육, 소매업, 보안 및 안전 관련 서비스 등)에 활용될 수 있다. 특히 디지털 워터마크를 삽입하는 방법으로, 원본 이미지 데이터를 소정의 크기로 변경한 제 1 이미지 데이터를 생성하는 단계; 제 1 이미지 데이터에 워터마크 데이터를 삽입하는 단계; 및 워터마크 데이터가 삽입된 이미지 데이터인 제 2 이미지 데이터에 원본 이미지 데이터와 제 1 이미지 데이터의 차이 데이터를 추가하는 단계를 포함하는 방법이 개시된다.

Description

워터마크 데이터 삽입 방법, 장치 및 시스템{Method, Appratus and System of Inserting Watermark Data}
본 발명은 디지털 워터마크 데이터의 삽입 방법, 장치 및 시스템에 관한 것이다.
인터넷은 인간이 정보를 생성하고 소비하는 인간 중심의 연결 망에서, 사물 등 분산된 구성 요소들 간에 정보를 주고 받아 처리하는 IoT(Internet of Things, 사물인터넷) 망으로 진화하고 있다. 클라우드 서버 등과의 연결을 통한 빅데이터(Big data) 처리 기술 등이 IoT 기술에 결합된 IoE (Internet of Everything) 기술도 대두되고 있다. IoT를 구현하기 위해서, 센싱 기술, 유무선 통신 및 네트워크 인프라, 서비스 인터페이스 기술, 및 보안 기술과 같은 기술 요소 들이 요구되어, 최근에는 사물간의 연결을 위한 센서 네트워크(sensor network), 사물 통신(Machine to Machine, M2M), MTC(Machine Type Communication)등의 기술이 연구되고 있다.
IoT 환경에서는 연결된 사물들에서 생성된 데이터를 수집, 분석하여 인간의 삶에 새로운 가치를 창출하는 지능형 IT(Internet Technology) 서비스가 제공될 수 있다. IoT는 기존의 IT(information technology)기술과 다양한 산업 간의 융합 및 복합을 통하여 스마트홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 스마트 그리드, 헬스 케어, 스마트 가전, 첨단의료서비스 등의 분야에 응용될 수 있다.
IoT(Internet of Things) 기술의 발전으로, 멀티미디어와 같은 디지털 컨텐츠가 폭발적으로 증가함에 따라, 디지털 컨텐츠의 불법 복제, 유통으로 인한 저작권 문제가 크게 대두되고 있다. 디지털 컨텐츠의 저작권을 보호하기 위한 대표적인 방법으로는 디지털 컨텐츠에 워터마크를 삽입하는 방법이 존재한다. 워터마크는 비가시성, 강인성, 명확성, 보안성과 같이 저작권 보호를 위한 특성을 가지는 기술이다.
도 1a 및 도 1b는 종래 기술에 따른 워터마크 삽입 및 추출 방법을 도시한다.
도 1a는 워터마크 삽입에 대한 종래 기술을 설명한다. 도 1a를 참조하면, 단계 10에서 디바이스는 원본 이미지 데이터를 획득한다. 단계 11에서 디바이스는 디바이스가 결정한 소정의 크기로 원본 이미지의 크기를 변경한다. 단계 12에서 디바이스 워터마크 데이터를 삽입하고, 단계 13에서, 디바이스는 워터마크 데이터가 삽입된 이미지의 크기를 조절하고, 배포한다.
도 1b는 워터마크 추출에 대한 종래 기술을 설명한다. 도 1b를 참조하면, 단계 20에서 디바이스는 워터마크 데이터가 삽입된 이미지를 획득한다. 단계 21에서 디바이스는 획득한 이미지의 크기를 소정의 크기로 변경한다. 단계 22에서 디바이스는 워터마크 데이터를 추출한다.
도 1a 및 도 1b에서와 같이, 종래 기술에서는 워터마크 데이터를 삽입 및 추출하기 위해 소정의 크기로 이미지를 변경해야 하므로, 이미지의 퀄리티가 저하되는 문제가 발생하였다. 또한 디바이스가 워터마크 데이터가 삽입된 이미지의 크기를 다시 변경하여 배포하는 경우에는, 이미지 내에 삽입된 워터마크 데이터가 소실될 수 있는 문제점이 존재하였다.
따라서, 데이터의 크기 변경 및 신호 처리에 강인한 워터마크 데이터 삽입 방법이 필요하다.
본 발명은 워터마크 데이터가 명확하게 검출되고, 데이터의 손실이 적은 워터마크 삽입 및 추출 방법을 제공하고자 한다.
상기와 같은 종래 기술의 문제를 해결하기 위한 일부 실시예는, 워터마크를 삽입하는 방법에 있어서, 원본 이미지 데이터를 소정의 크기로 변경한 제 1 이미지 데이터를 생성하는 단계; 상기 제 1 이미지 데이터에 워터마크 데이터를 삽입하는 단계; 및 상기 워터마크 데이터가 삽입된 이미지 데이터인 제 2 이미지 데이터에 상기 원본 이미지 데이터와 상기 제 1 이미지 데이터의 차이 데이터를 추가하는 단계를 포함할 수 있다.
상기 워터마크 데이터는 유효 워터마크 데이터 및 제어 워터마크 데이터를 포함할 수 있다.
상기 워터마크 데이터를 삽입하는 단계는, 유효 워터마크 데이터 삽입 위치 및 제어 워터마크 데이터 삽입 위치 중 적어도 하나의 삽입 위치를 판단하는 단계; 및 상기 판단 결과에 기초하여, 제 1 이미지 데이터 내에 상기 유효 워터마크 데이터 및 상기 제어 워터마크 데이터를 삽입하는 단계를 포함할 수 있다.
상기 판단하는 단계는, 상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값 및 검출 임계값에 기초하여 상기 제 1 이미지 데이터를 분석하는 단계; 및 상기 분석 결과에 기초하여, 제 1 이미지 데이터 내에 상기 유효 워터마크 데이터를 삽입할 위치 및 상기 제어 워터마크 데이터를 삽입할 위치를 판단하는 단계를 포함할 수 있다.
상기 분석하는 단계는, 상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 이미지 주파수 신호를 상기 검출 임계값과 비교할 수 있다.
상기 유효 워터마크 데이터를 삽입할 위치 및 상기 제어 워터마크 데이터를 삽입할 위치를 판단하는 단계는, 상기 비교 결과에 기초하여, 상기 유효 워터마크 데이터의 전체 또는 일부가 검출되는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 1 삽입 위치 및 상기 검출 임계값보다 소정의 크기 이상 크거나 작은 값을 가지는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 2 삽입 위치를 판단하는 단계를 포함할 수 있다.
상기 삽입하는 단계는, 상기 제 1 삽입 위치에 제어 워터마크 데이터를 삽입하고, 상기 제 2 삽입 위치에 유효 워터마크 데이터를 삽입하는 단계를 포함할 수 있다.
상기 삽입하는 단계는, 상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 이미지 주파수 신호에 상기 유효 워터마크 데이터 및 상기 제어 워터마크 데이터를 주파수 신호로 변환하여 삽입할 수 있다.
상기 추가하는 단계는, 상기 제 2 이미지 데이터를 원본 이미지 데이터와 동일한 크기로 변경하는 단계; 상기 변경된 크기의 제 2 이미지 데이터에 상기 원본 이미지 데이터와 상기 제 1 이미지 데이터의 차이 데이터를 추가하는 단계를 포함할 수 있다.
상기 추가하는 단계는, 상기 제 1 이미지 데이터를 원본 이미지 데이터와 동일한 크기로 변경하는 단계; 상기 제 2 이미지 데이터를 원본 이미지 데이터와 동일한 크기로 변경하는 단계; 및 상기 변경된 크기의 제 2 이미지 데이터에 상기 원본 이미지 데이터와 상기 변경된 크기의 제 1 이미지 데이터의 차이 데이터를 추가하는 단계를 포함하는 방법.
상기 유효 워터마크 데이터는 사용자 입력 또는 상기 원본 이미지 데이터의 정보에 기초하여 생성될 수 있다.
상기와 같은 종래 기술의 문제를 해결하기 위한 일부 실시예는, 워터마크 데이터의 추출 방법에 있어서, 소정의 데이터가 워터마크 데이터로써 삽입된 제 1 데이터를 수신하는 단계; 상기 제 1 데이터를 소정의 크기로 변경하는 단계; 및 상기 소정의 크기로 변경된 제 1 데이터로부터 상기 워터마크 데이터를 추출하는 단계를 포함하며, 상기 워터마크 데이터에 기초하여 상기 데이터를 분류하거나 소정의 동작을 수행하도록 제어하는 단계를 포함할 수 있다.
상기 워터마크 데이터는 이미지 정보를 포함하고, 상기 제 1 데이터는 원본 이미지 데이터의 크기가 변경된 이미지 데이터일 수 있다.
상기 제 1 데이터는 서버에 의해 생성될 수 있다.
상기 제 1 데이터는 오디오 데이터를 포함하고, 상기 워터마크 데이터는 사용자 입력에 기초하여 생성될 수 있다.
상기 워터마크 데이터는 워터마크 데이터의 시작을 나타내는 싱크 필드, 워터마크 데이터의 길이를 나타내는 길이 필드, 에러 검출 및 정정을 위한 CRC 필드, RS 필드 및 페이로드 필드 중 적어도 하나를 포함하는 블록 또는 패킷 형태로 생성될 수 있다.
상기와 같은 종래 기술의 문제를 해결하기 위한 일부 실시예는, 워터마크를 삽입하는 디바이스에 있어서, 원본 이미지 데이터를 소정의 크기로 변경한 제 1 이미지 데이터를 생성하는 크기 변경부; 상기 제 1 이미지 데이터에 워터마크 데이터를 삽입하는 워터마크 삽입부; 및 상기 워터마크 데이터가 삽입된 이미지 데이터인 제 2 이미지 데이터에 상기 원본 이미지 데이터와 상기 제 1 이미지 데이터의 차이 데이터를 추가하는 보상부를 포함할 수 있다.
상기 워터마크 데이터는 유효 워터마크 데이터 및 제어 워터마크 데이터를 포함할 수 있다.
상기 워터마크 삽입부는, 유효 워터마크 데이터 삽입 위치 및 제어 워터마크 데이터 삽입 위치 중 적어도 하나의 삽입 위치를 판단하는 삽입 위치 판단부를 더 포함하고, 상기 워터마크 삽입부는, 상기 판단 결과에 기초하여, 제 1 이미지 데이터 내에 상기 유효 워터마크 데이터 및 상기 제어 워터마크 데이터를 삽입할 수 있다.
상기 워터마크 삽입부는 상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값 및 검출 임계값에 기초하여 상기 제 1 이미지 데이터를 분석하는 워터마크 검출부를 더 포함하고, 상기 삽입 위치 판단부는, 상기 분석 결과에 기초하여, 제 1 이미지 데이터 내에 상기 유효 워터마크 데이터를 삽입할 위치 및 상기 제어 워터마크 데이터를 삽입할 위치를 판단할 수 있다.
상기 워터마크 검출부는, 상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 이미지 주파수 신호를 상기 검출 임계값과 비교할 수 있다.
상기 삽입 위치 판단부는, 상기 비교 결과에 기초하여, 상기 유효 워터마크 데이터의 전체 또는 일부가 검출되는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 1 삽입 위치 및 상기 검출 임계값보다 소정의 크기 이상 크거나 작은 값을 가지는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 2 삽입 위치를 판단할 수 있다.
상기 워터마크 삽입부는, 상기 제 1 삽입 위치에 제어 워터마크 데이터를 삽입하고, 상기 제 2 삽입 위치에 유효 워터마크 데이터를 삽입할 수 있다.
상기 워터마크 삽입부는, 상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 이미지 주파수 신호에 상기 유효 워터마크 데이터 및 상기 제어 워터마크 데이터를 주파수 신호로 변환하여 삽입할 수 있다.
상기 보상부는, 상기 제 2 이미지를 원본 이미지 데이터와 동일한 크기로 변경하고, 상기 변경된 크기의 제 2 이미지에 상기 원본 이미지 데이터와 상기 제 1 이미지 데이터의 차이 데이터를 추가할 수 있다.
상기 유효 워터마크 데이터는 사용자 입력 또는 상기 원본 이미지 데이터의 정보에 기초하여 생성될 수 있다.
상기와 같은 종래 기술의 문제를 해결하기 위한 일부 실시예는, 워터마크 데이터를 추출하는 디바이스에 있어서, 소정의 데이터가 워터마크 데이터로써 삽입된 제 1 데이터를 수신하는 수신부; 상기 제 1 데이터를 소정의 크기로 변경하는 크기 변경부; 상기 소정의 크기로 변경된 제 1 데이터로부터 상기 워터마크 데이터를 추출하는 워터마크 검출부; 및 상기 워터마크 데이터에 기초하여 상기 데이터를 분류하거나 소정의 동작을 수행하도록 제어하는 제어부를 포함할 수 있다.
상기 워터마크 데이터는 이미지 정보를 포함하고, 상기 제 1 데이터는 원본 이미지 데이터의 크기가 변경된 이미지 데이터일 수 있다.
상기 제 1 데이터는 서버에 의해 생성될 수 있다.
상기 제 1 데이터는 오디오 데이터 포함하고, 상기 워터마크 데이터는 사용자 입력에 기초하여 생성될 수 있다.
상기 워터마크 데이터는 워터마크 데이터의 시작을 나타내는 싱크 필드, 워터마크 데이터의 길이를 나타내는 길이 필드, 에러 검출 및 정정을 위한 CRC 필드, RS 필드 및 페이로드 필드 중 적어도 하나를 포함하는 블록 또는 패킷 형태로 생성될 수 있다.
본 개시의 실시예들은, 워터마크 데이터를 삽입시 원본 데이터의 손실이 적고, 워터마크 데이터가 명확하게 추출될 수 있는 워터마크 데이터 삽입 및 추출 방법을 제공한다.
도 1a 및 도 1b는 종래 기술에 따른, 워터마크 삽입 및 추출 방법을 도시한다.
도 2는 일부 실시예에 따른, 워터마크 삽입 방법에 대한 순서도를 도시한다.
도 3은 일부 실시예에 따른, 워터마크 삽입 방법에 대한 세부 순서도를 도시한다.
도 4a는 일부 실시예에 따른, 워터마크 데이터의 삽입 위치를 판단하는 방법에 대한 순서도를 도시한다.
도 4b는 일부 실시예에 따른, 워터마크 데이터의 삽입 방법을 설명하기 위한 도면이다.
도 5는 일부 실시예에 따른, 워터마크 데이터의 추출 방법에 대한 순서도를 도시한다.
도 6a 및 도 6b는 일부 실시예에 따른, 워터마크 삽입 및 추출방법에 따른 데이터 손실을 설명하기 위한 도면이다.
도 7a 및 도 7b는 일부 실시예에 따른, 워터마크 삽입 및 추출방법에 따른 워터마크 데이터 검출 정확도를 설명하기 위한 도면이다.
도 8은 일부 실시예에 따른, 이미지 정보를 워터마크 데이터로써 삽입하는 시스템을 도시한다.
도 9는 일부 실시예에 따른, 이미지 정보를 워터마크 데이터로써 삽입된 데이터로부터 워터마크 데이터를 추출하는 순서도를 도시한다.
도 10은 일부 실시예에 따른, 사용자 입력이 워터마크 데이터로써 삽입되는 시스템을 도시한다.
도 11은 일부 실시예에 따른, 사용자 입력이 워터마크 데이터로써 삽입된 데이터로부터 워터마크 데이터를 추출하는 순서도를 도시한다.
도 12는 일부 실시예에 따른, 워터마크 데이터의 패킷 포맷을 도시한다.
도 13 내지 도 15는 일부 실시예에 따른, 워터마크 삽입 방법에 기초한 워터마크 데이터의 검출 정확도를 나타낸다.
도 16 내지 17은 일부 실시예에 따른, 워터마크 데이터를 삽입하는 디바이스의 블록도를 도시한다.
도 18은 일부 실시예에 따른, 워터마크 데이터를 추출하는 디바이스의 블록도를 도시한다.
도 19는 일부 실시예에 따른, 워터마크 데이터를 삽입하는 디바이스의 세부 블록도를 도시한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서, 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 전기적으로 연결되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
명세서 전체에서 디바이스라 함은, 퍼스널 컴퓨터(Personal Computer), 휴대폰(Cellular Phone), 스마트 폰, TV, 타블렛, 노트북, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션, MP3 플레이어, 디지털 카메라, 냉장고, 세탁기, 청소기 등의 디바이스를 포함할 수 있고, 상기 예시에 제한되지 않으며, 다양한 디바이스를 포함할 수 있다.
명세서 전체에서 서버라 함은, 단일 서버, 서버의 집합체, 클라우드 서버등을 포함할 수 있다. 다만 상기 예시에 제한되지 않는다.
명세서 전체에서 워터마크 데이터라 함은 소정의 데이터 내에 삽입됨으로써, 저작권, 소유 정보, 위변조 여부 등을 식별할 수 있는 데이터를 포함할 수 있다. 워터마크 데이터는 난수를 포함하는 데이터일 수 있고, 사용자가 데이터 내에 삽입하기를 원하는 로고, 저작권 정보와 같은 식별 정보 또는 사용자 입력, 데이터의 정보 등 다양한 정보를 포함하는 데이터일 수 있다. 다만 상기 예시에 제한되지 않는다.
명세서 전체에서, 워터마크 데이터 삽입 및 추출은 다양한 방식으로 수행될 수 있다. 예를 들면, 디바이스는 공간 영역에서 워터마크 데이터를 삽입할 수도 있고, 데이터를 주파수 신호로 변환하여 주파수 영역에서 워터마크 데이터를 삽입할 수도 있다. 물론 상기 예시에 제한되는 것은 아니다.
명세서 전체에서, 워터마크 데이터 삽입 위치라 함은 데이터 내에 워터마크 데이터가 삽입되는 위치를 의미할 수 있다. 예를 들면, 워터마크 데이터 삽입 위치는 이미지 데이터 내의 소정의 픽셀 또는 픽셀 그룹의 위치(또는 픽셀과 대응하는 주파수 대역)나 오디오 데이터 내의 소정의 부분을 의미할 수 있다.
명세서 전체에서 워터마크 키라 함은, 워터마크 데이터를 생성 시 사용되는 사용자 키를 포함할 수 있으며, 워터마크 데이터를 제거하려는 권한 없는 사용자로부터 워터마크 데이터를 보호할 수 있는 데이터이다. 예를 들면, 워터마크 키라 함은 소정의 데이터에 기초하여 삽입할 워터마크 데이터로 생성할 때 사용되는 키를 포함할 수 있으며, 상기 예시에 제한되지 않는다.
도 2는 일부 실시예에 따른, 워터마크 삽입 방법에 대한 순서도를 도시한다.
단계 201에서, 디바이스는 원본 이미지 데이터를 소정의 크기로 변경한 이미지 데이터인, 제 1 이미지 데이터를 생성할 수 있다.
일부 실시예에 따르면, 소정의 크기라 함은 소정의 해상도를 의미할 수 있다. 예를 들면, 디바이스는 1080 x 1080의 해상도를 가진 원본 이미지를 540 x 540의 해상도를 가진 변경할 수 있다. 즉, 디바이스는 540 x 540으로 변경된 이미지 데이터인 제 1 이미지 데이터를 생성할 수 있다. 물론 상기 예시에 제한되지 않는다.
단계 203에서, 디바이스는 제 1 이미지 데이터에 워터마크 데이터를 삽입할 수 있다.
일부 실시예에 따르면, 워터마크 데이터는 유효 워터마크 데이터 및 제어 워터마크 데이터를 포함할 수 있다.
일부 실시예에 따르면, 유효 워터마크 데이터라 함은 디바이스가 워터마크 데이터로써 이미지 데이터 또는 오디오 데이터 내에 포함시키기를 원하는 워터마크 데이터를 의미할 수 있다. 예를 들면, 유효 워터마크 데이터는 저작권 정보, 소유권 정보, 원본 이미지에 관한 정보, 위변조 여부를 확인하기 위한 정보 등을 포함할 수 있다. 다시 말해서, 유효 워터마크 데이터는 디바이스가 수신 측에서 워터마크 데이터로써 추출하고, 확인할 수 있도록 이미지 데이터 또는 오디오 데이터 내에 삽입하는 데이터를 포함할 수 있다. 다만 상기 예시에 제한되지 않는다.
일부 실시예에 따르면, 제어 워터마크 데이터라 함은 정확한 워터마크 데이터의 검출이 수행되도록 이미지 데이터 또는 오디오 데이터 내에 삽입하는 데이터를 의미할 수 있다. 예를 들어, 디바이스가 워터마크 데이터를 삽입하였는데도 불구하고, 워터마크 데이터가 검출되지 않거나, 워터마크 데이터를 삽입하지 않았는데도 불구하고, 워터마크 데이터가 검출되는 오경보(False Alarm)이 발생할 수 있다. 제어 워터마크 데이터는 디바이스가 오경보를 방지하기 위해 삽입하는 데이터를 의미할 수 있다. 다시 말해서, 유효 워터마크 데이터가 정확하게 검출될 수 있도록 삽입하는 워터마크 데이터를 제어 워터마크 데이터라 할 수 있다.
일부 실시예에 따르면, 디바이스는 유효 워터마크 데이터 삽입 위치 및 제어 워터마크 데이터 삽입 위치 중 적어도 하나의 삽입 위치를 판단할 수 있다. 다시 말해서, 디바이스는 제 1 이미지 데이터 내의 어느 부분에 유효 워터마크 데이터를 삽입할지, 어느 부분에 제어 워터마크 데이터를 삽입할 지를 판단할 수 있다. 디바이스는 판단 결과에 따라, 제 1 이미지 데이터 내에 유효 워터마크 데이터 및 제어 워터마크 데이터를 삽입할 수 있다.
일부 실시예에 따르면, 디바이스는 제 1 이미지 데이터 내의 소정의 픽셀의 픽셀 값 및 검출 임계값에 기초하여 상기 제 1 이미지 데이터를 분석할 수 있다. 즉, 디바이스는 제 1 이미지 데이터 내의 각 픽셀 값 또는 소정의 그룹의 픽셀 그룹 값들과 워터마크 데이터의 검출 임계 값을 비교함으로써, 제 1 이미지 데이터를 분석할 수 있다. 다시 말해서, 제 1 디바이스는 워터마크 데이터를 삽입하기 전, 제 1 이미지 데이터를 분석함으로써, 유효 워터마크 데이터와 제어 워터마크 데이터를 삽입할 위치를 판단할 수 있다.
일부 실시예에 따르면, 검출 임계값이라 함은, 디바이스가 워터마크 데이터 검출 할 때 사용하는 값으로써, 디바이스는 픽셀 값 또는 신호 세기 값이 검출 임계 값과 비교하여 소정 크기 이상 또는 이하인 경우 워터마크 데이터가 삽입된 것으로 판단할 수 있다. 즉, 검출 임계값은 소정의 신호 세기 값 또는 소정의 픽셀 값 등을 포함할 수 있으며, 상기 예시에 제한되지 않는다.
일부 실시예에 따르면, 디바이스는 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 이미지 주파수 신호를 검출 임계값과 비교할 수도 있다. 즉, 디바이스는 이미지 데이터 내의 픽셀 값에 기초하여 제 1 이미지 데이터를 주파수 신호로 변환하고, 변환된 신호 세기와 검출 임계값과 비교할 수 있다.
일부 실시예에 따르면, 디바이스는 유효 워터마크 데이터의 전체 또는 일부가 검출되는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 1 삽입 위치를 판단할 수 있다. 즉, 디바이스는 유효 워터마크 데이터를 삽입하지 않았는데도 불구하고, 검출 임계값에 기초하여 유효 워터마크가 검출될 수 있는 위치를 찾을 수 있다.
일부 실시예에 따르면, 디바이스는 제 1 삽입 위치에 제어 워터마크 데이터를 삽입할 수 있다. 즉, 디바이스는 제 1 삽입 위치에 제어 워터마크 데이터를 삽입함으로써, 유효 워터마크 데이터를 삽입하지 않은 곳에서, 워터마크 데이터가 검출되지 않도록 제어할 수 있다.
일부 실시예에 따르면, 디바이스는 검출 임계값보다 소정의 크기 이상 크거나 작은 값을 가지는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 2 삽입 위치를 판단할 수 있다. 즉, 디바이스는 유효 워터마크 데이터를 삽입함으로써, 검출 임계값에 기초하여 유효 워터마크 데이터가 정확하게 검출될 수 있는 위치를 찾을 수 있다.
일반적으로 워터마크 데이터의 신호의 세기는 이미지 데이터의 신호 세기 보다 작으며, 워터마크 데이터의 신호를 소정의 세기 이상으로 삽입하는 경우, 이미지 데이터가 크게 변형될 수 있다. 따라서, 디바이스는 이미지 데이터가 크게 변형되지 않도록 소정의 세기 이하로 유효 워터마크 데이터를 삽입하더라도, 유효 워터마크 데이터가 정확하게 검출될 만한 이미지 데이터 내의 위치를 판단하고, 유효 워터마크 데이터를 삽입할 수 있다.
일부 실시예에 따르면, 디바이스는 유효 워터마크 데이터 및 제어 워터마크 데이터 중 적어도 하나를 주파수 신호로 변환하여 제 1 이미지 데이터에 삽입할 수 있다.
단계 205에서, 디바이스는 워터마크 데이터가 삽입된 이미지 데이터인 제 2 이미지 데이터에 원본 이미지 데이터와 제 1 이미지 데이터의 차이 데이터를 추가 할 수 있다.
단계 201에서 설명한 바와 같이 디바이스는 워터마크 데이터를 삽입하기 위해 원본 이미지의 크기를 변경한 제 1 이미지 데이터를 생성하였다. 이때, 원본 이미지의 크기 변경에 따라 손실되는 데이터가 존재한다. 예를 들어 원본 이미지가 1080 x 1080의 해상도를 가지고 제 1 이미지 데이터가 540 x 540 해상도를 가지는 경우, 원본 이미지로부터 제 1 이미지 데이터가 생성될 때 가로 및 세로에서 각각 540 개의 픽셀 값이 누락된다. 즉, 크기 변경에 따라 손실되는 데이터가 존재한다. 디바이스가 제 1 이미지를 다시 확대하더라도, 손실되는 데이터가 복구되지 않는다.
일부 실시예에 따르면, 디바이스는 제 1 이미지 데이터에 워터마크 데이터가 삽입된 이미지인, 제 2 이미지 데이터에 원본 이미지와 제 1 이미지 데이터와의 차이 데이터를 삽입할 수 있다. 차이 데이터라 함은 원본 이미지 데이터로부터 제 1 이미지 데이터가 생성될 때의 손실된 데이터로써, 원본 이미지 데이터와 제 1 이미지 데이터와의 차이를 의미할 수 있다. 예를 들면, 원본 이미지 데이터로부터 제 1 이미지 데이터 생성 시 삭제했던 데이터를 의미할 수 있다.
디바이스는 단계 201에서 크기 변경에 의해 손실되었던 데이터를 제 1 이미지 데이터에 워터마크 데이터를 삽입 한 이후, 추가함으로써, 원본 이미지와 워터마크 데이터가 삽입된 이미지와의 퀄리티의 차이가 크지 않도록 보상할 수 있다.
일부 실시예에 따르면, 디바이스는 제 2 이미지 데이터를 원본 이미지와 동일한 크기로 변경하고, 크기가 변경된 제 2 이미지 데이터에 원본 이미지와 제 1 이미지 데이터와의 차이 데이터를 삽입할 수 있다.
또한 일부 실시예에 따르면, 디바이스는 제 1 이미지 데이터를 원본 이미지 데이터와 동일한 크기로 변경하고, 원본 이미지 데이터와 변경된 크기의 제 1 이미지 데이터와의 차이 데이터를, 크기가 변경된 제 2 이미지 데이터에 삽입할 수 있다. 즉, 제 1 이미지 데이터를 소정의 크기로 변경하였다가, 원본 이미지 데이터와 동일한 크기로 변경함으로써, 손실되었던 데이터를 정확하게 파악하여, 제 2 이미지 데이터에 삽입할 수 있다.
일부 실시예에 따르면, 디바이스는 제 2 이미지 데이터에 차이 데이터를 삽입한 제 3 이미지 데이터를 송신할 수 있다. 디바이스는 다른 디바이스 또는 서버에 제 3 이미지 데이터를 송신할 수 있다.
또한 일부 실시예에 따르면, 유효 워터마크 데이터는 사용자 입력 또는 원본 이미지의 데이터 정보에 기초하여 생성될 수 있다. 즉, 디바이스는 사용자 입력이나 원본 이미지 데이터 정보에 기초하여 비트 스트림 또는 패킷을 생성하고, 생성된 비트 스트림 또는 패킷을 원본 데이터 내에 유효 워터마크 데이터로 삽입함으로써, 다른 디바이스에게 전달할 수 있다.
유효 워터마크 데이터가 삽입된 데이터를 수신한 다른 디바이스는 워터마크 데이터를 추출하고, 추출된 데이터에 기초하여, 소정의 동작을 수행하거나, 워터마크 데이터가 삽입되었던 데이터를 제어할 수 있다.
도 3은 일부 실시예에 따른, 워터마크 삽입 방법에 대한 세부 순서도를 도시한다.
단계 301에서, 디바이스는 원본 이미지 데이터를 소정의 크기로 변경한 제 1 이미지 데이터를 생성할 수 있다. 이는 도 2에서 설명한 바와 대응되므로 자세한 설명은 생략한다.
단계 303에서, 디바이스는 유효 워터마크 데이터 삽입 위치를 판단하는 및 제어 워터마크 데이터 삽입 위치 중 적어도 하나의 삽입 위치를 판단할 수 있다.
일부 실시예에 따르면, 워터마크 데이터는 유효 워터마크 데이터 및 제어 워터마크 데이터를 포함할 수 있다. 유효 워터마크 데이터라 함은 디바이스가 소정의 데이터 내에 삽입하는 저작권, 출처 등에 관한 정보로써, 향후 수신 측에서 삽입한 데이터를 추출하고, 확인할 수 있도록 삽입되는 워터마크 데이터를 포함할 수 있다.
제어 워터마크 데이터라 함은 유효 워터마크 데이터가 정확하게 검출되도록 삽입하는 데이터를 포함할 수 있다. 예를 들면, 제어 워터마크 데이터는 이미지 데이터 내의 픽셀 값 또는 이미지 데이터의 신호 세기를 조절하는 데이터일 수 있다. 이는 도 2에서 설명한 바와 대응된다.
일부 실시예에 따르면, 디바이스는 제 1 이미지 데이터 내의 어느 부분에 유효 워터마크 데이터를 삽입할지, 어느 부분에 제어 워터마크 데이터를 삽입할 지를 판단할 수 있다. 디바이스는 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값 또는 픽셀 값에 기초하여 변환된 신호 세기와, 워터마크 데이터를 검출하는데 이용되는 검출 임계값을 비교함으로써, 제 1 이미지 데이터로부터 워터마크 데이터가 검출되는지 판단할 수 있다.
다시 말해서, 디바이스는 제 1 이미지 데이터 내의 픽셀 값 또는 신호 세기 값이 검출 임계 값과 비교하여 소정 크기 이상 또는 이하인 경우 워터마크 데이터가 삽입된 것으로 판단할 수 있다. 일부 실시예에 따르면, 신호 세기 값은 신호의 피크 값을 포함할 수 있다.
일부 실시예에 따르면, 검출 임계값이라 함은, 디바이스가 워터마크 데이터 검출 시 사용하는 값으로써, 소정의 신호 세기에 관한 값 또는 소정의 픽셀 값 등을 포함할 수 있다. 또한 일부 실시예에 따르면, 검출 임계값은 소정의 형태의 파형을 나타낼 수 있다.
일부 실시예에 따르면, 디바이스는 제 1 이미지 데이터 내의 소정의 픽셀 값에 기초하여 주파수 신호로 변환된, 제 1 이미지 주파수 신호 전체 또는 일부를, 검출 임계값과 비교할 수도 있다. 즉, 디바이스는 이미지 데이터 내의 픽셀 값에 기초하여 제 1 이미지 데이터를 주파수 신호로 변환하고, 변환된 신호 세기와 검출 임계값과 비교할 수 있다.
일부 실시예에 따르면, 디바이스는 유효 워터마크 데이터가 검출되는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 1 삽입 위치를 판단할 수 있다. 즉, 디바이스는 유효 워터마크 데이터를 삽입하지 않았는데도 불구하고, 검출 임계값에 기초하여 유효 워터마크가 검출될 수 있는 위치를 찾을 수 있다.
예를 들면, 디바이스는 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 제 1 이미지 데이터의 소정의 부분을 DFT(Discrete Furier Transform) 연산을 통해 주파수 신호로 변환할 수 있다. 이후, 디바이스는 변환된 주파수 신호에, 유효 워터마크 비트 삽입시 사용되는 소정의 신호열(예를 들면, PN(Pseudo Noise) Sequence)를 곱하고, 소정의 신호열이 곱해진 변환된 주파수 신호의 피크 값을 계산할 수 있다. 디바이스는 계산된 피크 값을 임계값과 비교하여 제 1 이미지로부터 워터마크 데이터가 검출되는지 판단할 수 있다. 물론 상기 예시에 제한되지 않으며, 워터마크 데이터의 검출 방법은 실시예에 따라 상이할 수 있다.
단계 305에서, 디바이스는 판단에 기초하여, 제 1 이미지 데이터에 유효 워터마크 데이터 및 제어 워터마크 데이터를 삽입할 수 있다.
일부 실시예에 따르면, 디바이스는 제 1 삽입 위치에 제어 워터마크 데이터를 삽입할 수 있다. 즉, 디바이스는 제 1 삽입 위치에 제어 워터마크 데이터를 삽입함으로써, 유효 워터마크 데이터를 삽입하지 않은 곳에서, 워터마크 데이터가 검출되지 않도록 제어할 수 있다.
예를 들면, 제 1 삽입 위치라 함은 변환된 주파수 신호가 검출 임계 값으로부터 소정의 범위 이내의 값을 가지는 제 1 이미지 데이터 내의 소정의 부분일 수 있다. 예를 들어, 검출 임계값이 0.8이라 가정할 때, 디바이스는 변환된 주파수 신호의 신호 세기 값 또는 변환된 주파수 신호에 소정의 신호열을 곱한 신호의 피크 값이 0.6 내지 0.8인 제 1 이미지 데이터 내의 소정의 부분을 제 1 삽입 위치라 판단할 수 있다.
일부 실시예에 따르면, 디바이스는 검출 임계값보다 소정의 크기 이상 크거나 작은 값을 가지는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 2 삽입 위치를 판단할 수 있다. 즉, 디바이스는 유효 워터마크 데이터를 삽입함으로써, 검출 임계값에 기초하여 유효 워터마크 데이터가 정확하게 검출될 수 있는 위치를 찾을 수 있다.
예를 들어, 검출 임계값이 0.8이라 가정할 때, 디바이스는 변환된 주파수 신호의 신호 세기 값 또는 변환된 주파수 신호에 소정의 신호열을 곱한 신호의 피크 값이 0.8 이상인 제 1 이미지 데이터 내의 소정의 부분을 제 2 삽입 위치라 판단할 수 있다. 제 2 삽입 위치에 유효 워터마크 데이터를 삽입하는 경우, 워터마크를 삽입하는 디바이스가 유효 워터마크 데이터를 강한 신호 세기로 삽입하지 않더라도, 워터마크 데이터를 검출하는 디바이스가 정확하게 유효 워터마크 데이터를 검출할 수 있으며, 원본 이미지의 데이터가 크게 변형되지 않는다.
일부 실시예에 따르면, 제 1 이미지 데이터 내의 소정의 부분에 유효 워터마크 데이터 및 제어 워터마크 데이터를 삽입하는 방식은 대역 확산 방식을 이용할 수 있다. 물론 상기 예시에 제한되지 않는다.
단계 307에서, 디바이스는 워터마크 데이터가 삽입된 이미지 데이터인 제 2 이미지 데이터에 원본 이미지 데이터와 제 1 이미지 데이터의 차이 데이터를 추가할 수 있다. 단계 307은 도 2에서 설명한 바와 대응되므로, 자세한 설명은 생략한다.
도 4a는 일부 실시예에 따른, 워터마크 데이터의 삽입 위치를 판단하는 방법에 대한 순서도를 도시한다.
단계 401에서, 디바이스는 원본 이미지 데이터를 소정의 크기로 변경한 제 1 이미지 데이터를 생성할 수 있다. 이는 앞서 설명한 바와 대응되므로 자세한 설명은 생략한다,
단계 403에서, 디바이스는 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 이미지 주파수 신호를 검출 임계값과 비교할 수 있다.
일부 실시예에 따르면, 디바이스는 제 1 이미지 주파수 신호는 제 1 이미지 데이터 내의 소정의 부분의 주파수 신호를 포함할 수 있다. 디바이스는 제 1 이미지 데이터 내의 소정의 부분의 주파수 신호와 소정의 신호열을 연산하여 계산된 피크값인 소정의 부분의 피크값과 검출 임계값과 비교할 수 있다. 일부 실시예에 따르면, 소정의 신호열은 유효 워터마크 데이터를 소정의 대역으로 확산시키기 위해 사용되는 신호열일 수 있다.
단계 405에서, 디바이스는 제 1 삽입 위치인지 판단할 수 있다.
일부 실시예에 따르면, 제 1 삽입 위치라 함은 변환된 주파수 신호가 검출 임계 값으로부터 소정의 범위의 값을 가지는 제 1 이미지 데이터 내의 소정의 부분일 수 있다.
일부 실시예에 따르면, 검출 임계값 또는 제 1 삽입 위치를 판단하는데 사용되는 기준은 워터마크 데이터를 삽입하는 디바이스 또는 워터마크 데이터를 추출하는 디바이스에 의해 결정될 수 있다.
단계 407에서, 디바이스는 제 1 삽입 위치에 제어 워터마크 데이터를 삽입할 수 있다. 디바이스는 제 1 삽입 위치에 제어 워터마크 데이터를 삽입함으로써, 유효 워터마크 데이터의 오검출을 최소화할 수 있다.
단계 409에서, 디바이스는 제 2 삽입 위치인지 판단할 수 있다.
일부 실시예에 따르면, 제 2 삽입 위치라 함은 검출 임계값보다 소정의 크기 이상 크거나 작은 값을 가지는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 2 삽입 위치를 판단할 수 있다.
일부 실시예에 따르면, 제 2 삽입 위치를 판단하는 기준은 워터마크 데이터를 삽입하는 디바이스 또는 워터마크 데이터를 추출하는 디바이스에 의해 결정될 수 있다.
단계 411에서, 디바이스는 제 2 삽입 위치에 유효 워터마크 데이터를 삽입 할 수 있다.
일부 실시예에 따르면, 디바이스는 제 2 삽입 위치인지 판단한 후, 제 1 삽입 위치인지를 판단할 수도 있다. 즉, 제 1 삽입 위치나 제 2 삽입 위치 판단 순서는 구현예에 따라 달라질 수 있다.
단계 413에서, 디바이스는 워터마크 데이터를 삽입하지 않을 수 있다. 즉, 디바이스는 제 1 삽입 위치나 제 2 삽입 위치로 판단되지 않는 제 1 이미지 내의 소정의 부분에는 워터마크 데이터를 삽입하지 않을 수 있다.
도 4b는 일부 실시예에 따른, 워터마크 데이터의 삽입 방법을 설명하기 위한 도면이다.
도 4b를 참조하면, 제 1 이미지(421)는 원본 이미지를 소정의 크기로 변경한 이미지를 의미할 수 있다.
일부 실시예에 따르면, 디바이스는 제 1 이미지(421)를 주파수 신호로 변환하기 위해 제 1 이미지(421)의 소정의 부분을 선택할 수 있다. 도 4b를 참조하면, 제 1 디바이스는 제 1 이미지(421) 내의 8 x 8 블록을 선택할 수 있다. 디바이스는, 선택한 8 x 8 블록의 픽셀 값(422)을 주파수 신호로 변경할 수 있고, 주파수 신호로 변경하기 전이나, 주파수 신호로 변경한 후에 워터마크 데이터를 삽입할 수 있다,
일부 실시예에 따르면, 워터마크 데이터는 사용자가 삽입하고자 하는 데이터에 소정의 신호열을 곱함으로써 생성될 수 있다. 또한 소정의 신호열은 워터마크 키를 이용하여 생성될 수 있다.
일부 실시예에 따르면, 디바이스는 블록 단위가 아닌 제 1 이미지의 전체 영역을 선택하여 주파수 신호로 변경 및 워터마크 데이터를 삽입할 수도 있다.
도 5는 일부 실시예에 따른, 워터마크 데이터의 추출 방법에 대한 순서도를 도시한다.
단계 501에서, 디바이스는 소정의 데이터가 워터마크 데이터로써 삽입된 제 1 데이터를 수신할 수 있다.
일부 실시예에 따르면, 소정의 데이터는 이미지 데이터 또는 오디오 데이터일 수 있다. 물론 상기 예시에 제한되지 않으며, 다양한 타입의 데이터를 포함할 수 있다.
일부 실시예에 따르면, 디바이스가 수신한 제 1 데이터는 원본 데이터가 소정의 크기로 변경된 후, 워터마크 데이터가 삽입된 데이터일 수 있다. 또한 제 1 데이터는 워터마크 데이터뿐만 아니라 원본 데이터와 소정의 크기로 변경된 데이터의 차이 데이터가 삽입된 데이터일 수 있다.
일부 실시예에 따르면, 제 1 데이터 내에 삽입된 워터마크 데이터는 원본 데이터의 정보에 기초하여 생성된 워터마크 데이터일 수 있다. 예를 들면, 워터마크 데이터를 삽입하는 디바이스는 원본 데이터의 정보에 기초하여 워터마크 데이터를 생성하고, 원본 데이터를 소정의 크기로 변경한 후, 생성한 워터마크 데이터를 삽입할 수 있다.
일부 실시예에 따르면, 제 1 데이터 내에 삽입된 워터마크 데이터는 유효 워터마크 데이터 및 제어 워터마크 데이터를 포함할 수 있다. 일부 실시예에 따르면, 유효 워터마크 데이터는 원본 데이터의 정보에 기초하여 생성될 수 있다.
일부 실시예에 따르면, 원본 데이터의 정보라 함은, 원본 데이터의 생성 날짜, 시간, 원본 데이터의 작성자, 원본 데이터의 크기, 원본 데이터의 해상도, 원본 데이터의 파일 형식, 원본 데이터의 압축 방식 등 다양한 정보를 포함할 수 있으며, 상기 예시에 제한되지 않는다.
예를 들어, 제 1 데이터가 이미지 데이터인 경우, 원본 이미지 내에 포함된 오브젝트의 정보, 원본 이미지 데이터의 해상도 등에 관한 정보가 포함될 수 있으며, 오디오 데이터인 경우, 오디오의 아티스트, 파일 형식 등에 관한 정보가 포함될 수 있다.
일부 실시예에 따르면, 제 1 데이터는 서버에 의해 생성될 수 있다. 즉, 서버가 직접 워터마크 데이터를 삽입한 제 1 데이터를 생성할 수도 있고, 워터마크 데이터가 삽입된 소정의 데이터를 수신하여 크기를 변경할 수도 있다. 예를 들어, 서버는 다른 디바이스로부터 워터마크 데이터가 삽입된 소정의 이미지를 수신하고, 수신된 이미지의 썸네일 이미지를 생성할 수 있다. 디바이스는 서버가 생성한 썸네일 이미지를 수신 할 수 있으며, 수신된 썸네일 이미지에도 워터마크 데이터가 삽입되어 있다.
일부 실시예에 따르면, 워터마크 데이터는 사용자 입력에 기초하여 생성될 수도 있다. 일부 실시예에 따르면, 워터마크 데이터는 사용자 입력에 기초하여 생성된 제어 정보를 포함할 수 있다. 제어 정보는 볼륨 조절, 음장 선택, 재생 및 정지 등 다양한 제어 정보를 포함할 수 있으며, 상기 예시에 제한되지 않는다.
일부 실시예에 따르면, 워터마크 데이터는 워터마크 데이터의 시작을 나타내는 싱크 필드, 워터마크 데이터의 길이를 나타내는 길이 필드, 에러 검출 및 정정을 위한 CRC 필드, RS 필드 및 페이로드 필드 중 적어도 하나를 포함하는 블록 또는 패킷 형태로 생성될 수 있다.
예를 들어, PC(Personal Computer)가 스피커에게 오디오 데이터를 송신할 때, PC는 PC가 수신한 사용자 입력에 기초하여 제어 정보를 생성하고, 생성된 제어 정보에 기초하여 워터마크 데이터를 생성할 수 있다. PC는 생성한 워터마크 데이터를 오디오 데이터 내에 삽입하여 스피커에게 송신며, 스피커는 수신한 오디오 데이터에서 워터마크 데이터를 추출하고, 추출한 워터마크 데이터 내의 제어 정보에 기초하여 오디오 데이터의 입력 및 출력을 제어할 수 있다. 또한 PC는 워터마크 데이터를 소정의 포맷을 가진 패킷 또는 블록 형태로 생성하고, 오디오 데이터 내에 삽입하여 송신할 수 있다.
단계 503에서, 디바이스는 제 1 데이터를 소정의 크기로 변경할 수 있다.
일부 실시예에 따르면, 디바이스는 제 1 데이터로부터 워터마크 데이터를 추출하기 위해 소정의 크기로 변경할 수 있다. 디바이스는 워터마크 데이터를 정확하게 검출하기 위해서, 워터마크 데이터 삽입 시 원본 데이터가 변경되었던 크기로 제 1 데이터의 크기를 변경할 수 있다.
일부 실시예에 따르면, 소정의 크기는 다른 디바이스, 사용자 입력에 의해 결정될 수 있다.
단계 505에서, 디바이스는 소정의 크기로 변경된 제 1 데이터로부터 상기 워터마크 데이터를 추출할 수 있다.
일부 실시예에 따르면, 디바이스는 소정의 크기로 변경된 제 1 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값 또는 픽셀 값에 기초하여 변환된 신호 세기와 워터마크 데이터를 검출하는데 이용되는 검출 임계값을 비교함으로써, 소정의 크기로 변경된 제 1 데이터로부터 워터마크 데이터를 검출할 수 있다. 다시 말해서, 디바이스는 픽셀 값 또는 신호 세기 값을 검출 임계 값과 비교하여, 픽셀 값 또는 신호 세기 값이 소정 크기 이상 또는 이하인 경우 워터마크 데이터가 삽입된 것으로 판단할 수 있다. 일부 실시예에 따르면, 신호 세기 값은 신호의 피크 값을 포함할 수 있다.
일부 실시예에 따르면, 검출 임계값이라 함은, 디바이스가 워터마크 데이터 검출 시 사용하는 값으로써, 소정의 신호 세기에 관한 값 또는 소정의 픽셀 값 등을 포함할 수 있다. 또한 일부 실시예에 따르면, 검출 임계값은 소정의 형태의 파형을 나타낼 수 있다.
일부 실시예에 따르면, 디바이스는 소정의 크기로 변환된 제 1 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 데이터 주파수 신호를 검출 임계값과 비교할 수도 있다.
예를 들면, 제 1 데이터가 이미지인 경우, 디바이스는 소정의 크기로 변환된 제 1 데이터의 소정의 부분을 DFT(Discrete Furier Transform) 연산을 통해 주파수 신호로 변환할 수 있다. 이후, 디바이스는 변환된 주파수 신호에 유효 워터마크 비트 삽입시 사용되는 소정의 신호열(예를 들면, PN(Pseudo Noise) Sequence)를 곱하고, 소정의 신호열이 곱해진 변환된 주파수 신호의 피크 값을 계산하고, 계산된 피크 값을 임계값과 비교한 결과에 따라 워터마크 데이터가 검출되는지 판단할 수 있다. 물론 상기 예시에 제한되지 않으며, 워터마크 데이터의 검출 방법은 실시예에 따라 상이할 수 있다.
일부 실시예에 따르면, 디바이스는 소정의 크기로 변경된 제 1 데이터의 소정의 부분으로부터 워터마크 데이터의 각각의 비트를 획득하고, 획득한 비트들에 기초하여 워터마크 데이터로써 삽입되었던 데이터를 재구성할 수 있다.
단계 507에서, 디바이스는 워터마크 데이터에 기초하여 데이터를 분류하거나, 소정의 동작을 수행하도록 제어할 수 있다.
일부 실시예에 따르면, 디바이스는 추출한 워터마크 데이터에 기초하여, 워터마크 데이터 내에 포함된 명령을 수행하거나, 워터마크 데이터 내에 포함된 정보에 기초하여 제 1 데이터를 분류할 수 있다.
예를 들면, 제 1 데이터 내에 포함되었던 워터마크 데이터에 제 1 데이터에 관한 정보가 포함되어 있는 경우, 디바이스는 제 1 데이터를 저장할 때, 제 1 데이터에 관한 정보에 기초하여 저장할 수 있고, 제 1 데이터에 관한 정보를 사용자에게 표시 또는 제공할 수 있다. 또한 제 1 데이터 내에 포함되었던 워터마크 데이터에 사용자의 제어 정보 또는 소정의 동작을 수행할 것을 요청하는 명령이 포함된 경우, 디바이스는 사용자의 제어 정보에 기초하여, 소정의 동작을 수행하거나, 디바이스를 제어할 수 있다.
일부 실시예에 따르면, 도 5에서 설명하는 디바이스는 워터마크 데이터를 추출하는 디바이스로써, 워터마크 데이터를 삽입하는 디바이스와 동일할 수도 있고, 상이할 수도 있다. 즉, 하나의 디바이스가 워터마크 데이터를 삽입할 수도 있고, 추출할 수도 있다.
도 6a 및 도 6b는 일부 실시예에 따른, 워터마크 삽입 및 추출방법에 따른 데이터 손실을 설명하기 위한 도면이다.
도 6a에서는 디바이스는 워터마크 데이터를 삽입을 위해, 원본 이미지 데이터(601)를 소정의 크기로 변경한 제 1 이미지 데이터를 생성한 후, 제 1 이미지 데이터에 워터마크 데이터를 삽입한 제 2 이미지 데이터(603)를 생성한다. 도 6a에서는 원본 이미지 데이터(601)와 제 2 이미지 데이터(603) 및 원본 이미지 데이터(601)와 제 2 이미지 데이터(603)의 신호의 차이를 나타내는 그림(602)을 도시한다.
일부 실시예에 따르면, 디바이스는 워터마크 데이터 삽입 시, 소정의 크기로 원본 이미지 데이터의 크기를 변경한다. 원본 이미지 데이터가 소정의 크기로 변경될 때, 원본 이미지 데이터의 일부 데이터가 손실된다. 즉, 도 6a의 원본 이미지 데이터(601)와 제 2 이미지 데이터(603)의 신호의 차이를 나타내는 그림(602)에서 진한 음영으로 표시된 부분(604)을 보면, 원본 이미지 데이터(601)와 제 1 이미지 데이터(603)의 신호 차이가 크게 발생하게 됨을 알 수 있다. 다시 말해서, 제 2 이미지 데이터(603)는 원본 이미지 데이터(601)에 비해 품질이 손상된다.
예를 들면, 원본 이미지 데이터(601)의 해상도가 3560 * 2426일 때, 디바이스가 워터마크 데이터를 삽입하기 위해 원본 이미지 데이터(601)를 800 * 600의 해상도로 변경할 수 있다. 디바이스가 800 * 600 해상도로 변경된 이미지에 워터마크 데이터가 삽입된 제 2 이미지 데이터(603)를 다시 3560 * 2426 해상도로 변경하더라도, 손실된 이미지 데이터를 보상하지 않는 한, 제 2 이미지 데이터(603)는 원본 이미지 데이터(601)에 비해 품질이 저하된다.
다시 말해서, 디바이스가 제 2 이미지 데이터(603)의 해상도를 다시 원본 이미지 데이터와 동일하게 변경한다 하더라도, 블러링(Blurring)과 같은 효과가 발생하게 되므로, 원본 이미지 데이터(601)에 비해 품질이 저하된다. 또한 제 1 이미지 데이터(603)에 워터마크 데이터를 삽입 후, 더 작은 해상도로 변경하는 경우에는 워터마크 데이터의 정확한 검출이 어려울 수 있다.
도 6b를 참조하면, 디바이스는 워터마크 데이터를 삽입을 위해, 원본 이미지 데이터(601)를 소정의 크기로 변경한 제 1 이미지 데이터를 생성한 후, 제 1 이미지 데이터에 워터마크 데이터를 삽입한 제 2 이미지 데이터(603)를 생성한다. 또한 디바이스는 제 2 이미지 데이터(603)에 원본 이미지 데이터(601)와 제 1 이미지 데이터와의 차이 데이터를 삽입한 제 3 이미지 데이터(613)를 생성한다.
일부 실시예에 따르면, 디바이스는 원본 이미지 데이터(601)의 크기를 변경한 후 워터마크 데이터를 삽입한 제 2 이미지 데이터(603)을 생성할 수 있다. 디바이스는 제 2 이미지 데이터(603)를 원본 이미지 데이터(601)과 동일한 크기로 변경하며, 원본 이미지 데이터와 제 1 이미지 데이터(603)의 차이 데이터를 삽입한다. 즉, 원본 이미지 데이터(601)의 크기가 변경될 때 손실되었던 이미지 데이터를 보상한다.
도 6a의 원본 이미지 데이터(601)와 제 2 이미지 데이터(603)의 신호의 차이를 나타내는 그림(602)와 도 6b의 원본 이미지 데이터(601)와 제 3 이미지 데이터(613)의 신호의 차이를 나타내는 그림(612)을 비교해볼 때, 도 6b에 표시된 신호 차이에 대한 그림에는 도 6a에서와 같이 진한 음영 부분이 표시되어 있지 않다. 즉, 디바이스가 제 3 이미지 데이터(613) 생성 시 손실되었던 이미지 데이터를 보상하였기 때문에 제 3 이미지 데이터(613)는 원본 이미지 데이터에 비해 품질이 크게 저하되지 않는다.
예를 들면, 원본 이미지 데이터(601)의 해상도가 3560 * 2426일 때, 디바이스가 워터마크 데이터를 삽입하기 위해 원본 이미지 데이터(601)를 800 * 600의 해상도로 변경할 수 있다. 디바이스가 800 * 600 해상도로 변경된 이미지에 워터마크 데이터가 삽입된 제 2 이미지 데이터(603)를 다시 3560 * 2426 해상도로 변경할 때, 3560*2426의 해상도를 800 * 600으로 변경할 때 손실되는 이미지 데이터를 삽입하거나, 보상함으로써, 제 3 이미지 데이터(613)을 생성하므로, 생성된 제 3 이미지 데이터(613)는 원본 이미지 데이터(601)에 비해 품질이 크게 저하되지 않는다.
도 7a 및 도 7b는 일부 실시예에 따른, 워터마크 삽입 및 추출방법에 따른 워터마크 데이터 검출 정확도를 설명하기 위한 도면이다.
도 7a는 원본 이미지 데이터(701), 유효 워터마크 데이터만을 삽입한 제 1 이미지 데이터(703) 및 제 1 이미지 데이터(703)에 삽입된 유효 워터마크 데이터의 신호(702)를 도시한다.
도 7b는 원본 이미지 데이터(701), 유효 워터마크 데이터 및 제어 워터마크 데이터가 삽입된 제 2 이미지 데이터(713) 및 제 2 이미지 데이터(713)에 삽입된 유효 워터마크 데이터 및 제어 워터마크 데이터의 신호(712)를 도시한다.
도 7a 및 도 7b를 참조하면, 제 1 이미지 데이터(703)와 제 2 이미지 데이터(713)의 품질의 차이는 크지 않다. 제 1 이미지 데이터(703)와는 상이하게, 유효 워터마크 데이터 신호(702)에 비해 많은 데이터를 포함하는 유효 워터마크 데이터 및 제어 워터마크 데이터 신호(712)가 제 2 이미지 데이터(713)에 삽입되기는 하나, 앞서 설명한 바와 같이 제어 워터마크 데이터는 유효 워터마크 데이터가 정확히 검출될 수 있도록 픽셀 값, 신호 세기 또는 피크 값을 조절하는 소정의 값으로써, 제어 워터마크 데이터는 이미지 데이터의 형태를 크게 변경하지 않는다.
일부 실시예에 따르면, 제어 워터마크 비트를 별도로 삽입하는 경우, 워터마크 데이터가 삽입된 이미지의 품질 차이는 크지 않으면서도, 디바이스가 정확하게 유효 워터마크 비트를 검출할 수 있다, 예를 들면, 130개의 유효 워터마크 비트를 삽입할 때, 제어 워터마크 비트가 함께 삽입되지 않은 이미지에서는 169개의 유효 워터마크 비트가 검출될 수 있다. 즉, 디바이스는 정확하게 유효 워터마크 비트를 검출할 수 없다. 다만, 339개의 제어 워터마크 비트가 130개의 유효 워터마크 비트와 함께 삽입된 이미지에서는 130개의 유효 워터마크 비트가 검출될 수 있다. 즉, 디바이스는 정확하게 유효 워터마크 비트를 검출할 수 있다.
도 8은 일부 실시예에 따른, 이미지 정보를 워터마크 데이터로써 삽입하는 시스템을 도시한다.
일부 실시예에 따르면, 제 1 디바이스(101)는 이미지 정보를 워터마크 데이터로서 생성할 수 있다. 예를 들면, 제 1 디바이스(101)는 이미지 정보를 비트스트림으로 생성하고, 생성된 비트 스트림에 소정의 비트열을 곱함으로써, 워터마크 데이터를 생성할 수 있다.
일부 실시예에 따르면, 제 1 디바이스(101)는 원본 이미지 데이터(801)를 소정의 크기로 변환하고, 생성한 워터마크 데이터를 삽입할 수 있다. 제 1 디바이스(101)는 워터마크 데이터가 삽입된 이미지 데이터인 제 1 이미지 데이터(803)에 원본 이미지 데이터가 소정의 크기로 변환될 때 손실되었던 일부의 데이터를 추가할 수 있다. 또한 제 1 디바이스(101)는 제 1 이미지 데이터(803)의 크기를 변경할 수도 있다 워터마크 데이터 삽입 및 크기 변환에 대해서는 앞서 설명한 바와 대응되므로 자세한 설명은 생략한다.
일부 실시예에 따르면, 제 1 디바이스(101)는 제 1 이미지 데이터(803)를 서버(103)로 송신할 수 있다.
일부 실시예에 따르면, 서버(103)는 제 1 이미지 데이터(803)를 수신할 수 있다. 또한 서버(103)는 제 1 이미지 데이터(803)의 크기를 변경할 수 있다. 예를 들면, 서버(103)는 워터마크 데이터가 삽입된 이미지의 썸네일이나 프리뷰(Pre-view)를 생성할 수 있다. 서버(103)는 제 1 이미지 데이터(803)의 크기를 변경함으로써, 제 2 이미지 데이터(805)를 생성할 수 있다.
일부 실시예에 따르면, 서버(103)는 제 1 이미지 데이터(803) 또는 제 2 이미지 데이터(805)로부터 워터마크 데이터를 추출할 수도 있다. 또한 일부 실시예에 따르면, 서버(103)는 제 2 이미지 데이터(805)를 제 2 디바이스(102)에게 송신할 수 있다.
일부 실시예에 따르면, 제 2 디바이스(102)는 제 2 이미지 데이터(805)로부터 워터마크 데이터를 추출할 수 있다. 제 2 디바이스(102)는 추출한 워터마크 데이터로부터 원본 이미지(801)에 대한 정보를 획득할 수 있다.
도 9는 일부 실시예에 따른, 이미지 정보를 워터마크 데이터로써 삽입된 데이터로부터 워터마크 데이터를 추출하는 순서도를 도시한다.
단계 901에서, 디바이스는 소정의 데이터가 워터마크 데이터로써 삽입된 이미지 데이터를 수신할 수 있다.
일부 실시예에 따르면, 소정의 데이터는 워터마크 데이터가 삽입된 이미지 데이터에 대한 정보를 포함할 수 있다. 또한 일부 실시예에 따르면, 디바이스가 수시한 이미지 데이터는 썸네일 또는 프리뷰 이미지일 수 있다. 즉, 디바이스가 수신한 이미지 데이터는 서버에서 생성된 이미지 또는 서버에 의해 크기가 변경된 이미지일 수 있다.
단계 903에서, 디바이스는 이미지 데이터로부터 워터마크 데이터를 추출할 수 있다.
일부 실시예에 따르면, 앞서 설명한 바와 같이 디바이스는 이미지 데이터로부터 워터마크 데이터를 추출하기 위해 단계 901에서 수신한 이미지 데이터를 소정의 크기로 변경할 수도 있다. 다만, 상기 예시에 제한되는 것은 아니다.
단계 905에서, 디바이스는 추출된 워터마크 데이터로부터 이미지 데이터에 관한 정보를 획득할 수 있다.
일부 실시예에 따르면, 디바이스가 이미지 데이터에 관한 정보를 획득하기 위해서는 별도의 분석을 수행하거나, 이미지 데이터에 관한 정보를 별도로 수신하여야 한다. 그러나, 이미지 데이터에 관한 정보가 워터마크 데이터에 포함되어 있는 경우에는 워터마크 데이터를 검출함으로써, 별도의 분석이나, 추가적인 수신 과정 없이 이미지에 관한 정보를 획득할 수 있다.
단계 907에서, 디바이스는 이미지 데이터에 관한 정보에 기초하여 이미지를 분류할 수 있다. 또한 일부 실시예에 따르면, 이미지 데이터에 관한 정보를 표시하고, 사용자 입력에 기초하여, 서버에게 원본 이미지 데이터에 대한 요청을 송신할 수도 있다.
도 10은 일부 실시예에 따른, 사용자 입력이 워터마크 데이터로써 삽입되는 시스템을 도시한다.
일부 실시예에 따르면, 제 1 디바이스(101)는 사용자 입력을 수신할 수 있다. 또한 제 1 디바이스(101)는 사용자 입력에 기초하여 워터마크 데이터를 생성할 수 있다. 일부 실시예에 따르면, 제 1 디바이스(101)는 수신된 사용자 입력에 기초하여 제어 정보 또는 시스템 설정 정보를 생성할 수 있고, 생성한 제어 정보 또는 시스템 설정 정보에 기초하여 워터마크 데이터를 생성할 수도 있다.
일부 실시예에 따르면, 제 1 디바이스(101)는 사용자 입력을 패킷화 모듈을 이용하여 패킷화하고, 패킷화된 사용자 입력을 워터마크 데이터로서 오디오 데이터(1001)에 삽입할 수 있다. 또한 일부 실시예에 따르면, 제 1 디바이스(101)는 사용자 입력에 기초하여 생성된 패킷을 사운드 블록 인코더 모듈을 이용하여 PCM(Pulse Code Modulation) 프레임으로 생성할 수도 있다.
일부 실시예에 따르면, 제어 정보라 함은 소정의 동작을 수행하도록 디바이스를 제어하는 정보를 포함할 수 있으며, 시스템 설정 정보라 함은 디바이스의 시스템을 설정하는 정보를 포함할 수 있다. 다만 상기 예시에 제한되지 않는다.
일부 실시예에 따르면, 제 1 디바이스(101)는 생성한 워터마크 데이터를 원본 오디오 데이터(1001)에 삽입할 수 있다. 일부 실시예에 따르면, 제 1 디바이스(101)는 원본 오디오 데이터(1001)의 가청 주파수 영역 또는 비가청 주파수 영역에 워터마크 데이터를 삽입할 수 있다.
일부 실시예에 따르면 제 1 디바이스(101)는 워터마크 데이터가 삽입된 오디오 데이터인 제 1 오디오 데이터(1003)을 제 2 디바이스(102)에게 송신할 수 있다. 또한 제 1 디바이스(101)는 워터마크 데이터가 삽입된 제 1 오디오 데이터(1003)을 소정의 압축 방식으로 압축하는 오디오 인코더를 포함할 수도 있으며, 제 1 오디오 데이터(1003)를 인코딩하여 제 2 디바이스(102)에게 송신할 수도 있다.
일부 실시예에 따르면, 제 1 디바이스(101)는 다양한 통신 매체 및 통신 규격을 통해 제 2 디바이스(102)에게 제 1 오디오 데이터(1003)를 송신할 수 있다. 예를 들면, 제 1 디바이스(101)는 AUX, Bluetooth, Wi-Fi와 같은 규격이나, 무선 또는 유선 통신 매체를 이용하여 제 1 오디오 데이터(1003)를 제 2 디바이스(102)에게 송신할 수 있다.
일부 실시예에 따르면, 제 2 디바이스(102)는 제 1 오디오 데이터(1003)를 수신할 수 있다. 제 2 디바이스는 제 1 오디오 데이터(1003)로부터 워터마크 데이터를 추출할 수 있다.
일부 실시예에 따르면, 제 2 디바이스(102)는 제 1 디바이스(101)로부터 수신된 제 1 오디오 데이터를 PCM frame 단위로 처리할 수 있으며, 제 1 디바이스(101)가 사용자 입력에 기초하여 생성한 패킷을 디패킷화 하여 사용자 입력을 획득할 수 있다. 또한 제 1 디바이스(101)가 제 1 오디오 데이터(1003)를 인코딩하여 송신한 경우, 제 2 디바이스(102)는 인코딩된 제 1 오디오 데이터(1003)를 디코딩할 수도 있다.
일부 실시예에 따르면, 제 2 디바이스(102)는 추출된 워터마크 데이터에 포함된 사용자 입력에 따라 소정의 동작을 수행할 수 있다. 예를 들면, 제 2 디바이스(102)는 워터마크 데이터 내에 포함된 제어 정보 또는 시스템 설정 정보에 따라 제 2 디바이스(102)의 소정의 구성 요소를 제어하거나, 제 2 디바이스(102)의 시스템 설정을 변경할 수 있다.
도 11은 일부 실시예에 따른, 사용자 입력이 워터마크 데이터로써 삽입된 데이터로부터 워터마크 데이터를 추출하는 순서도를 도시한다.
단계 1101에서, 디바이스는 소정의 데이터가 워터마크 데이터로써 삽입된 오디오 데이터를 수신할 수 있다.
일부 실시예에 따르면, 오디오 데이터 내에 포함된 워터마크 데이터는 패킷 형태로 포함될 수 있다. 워터마크를 삽입하는 디바이스가 사용자 입력을 수신하고, 사용자 입력에 기초하여 워터마크 데이터를 생성하며, 생성한 워터마크 데이터를 패킷화하여 오디오 데이터에 삽입할 수 있다.
일부 실시예에 따르면, 디바이스가 수신한 오디오 데이터는 소정의 코덱을 이용하여 압축된 데이터일 수 있다. 또한 디바이스는 소정의 통신 매체를 통해 오디오 데이터를 수신할 수 있다. 이는 도 10에서 설명한 내용과 대응된다.
단계 1103에서, 디바이스는 오디오 데이터로부터 워터마크 데이터를 추출할 수 있다.
단계 1105에서, 디바이스는 추출된 워터마크 데이터로부터 사용자 입력에 관한 정보를 획득할 수 있다.
일부 실시예에 따르면, 디바이스는 워터마크 데이터를 추출하고, 추출한 워터마크 데이터가 소정의 포맷을 가진 패킷 또는 블록인 경우 패킷 또는 블록 구조에 기초하여 파싱함으로써, 워터마크 데이터 내의 사용자 입력에 관한 정보를 획득할 수 있다.
단계 1107에서, 디바이스는 사용자 입력에 관한 정보에 기초하여 소정의 동작을 수행하도록 제어할 수 있다. 예를 들면, 사용자 입력이 제어 정보를 포함하는 경우, 디바이스는 제어 정보에 기초하여 디바이스의 각 구성부를 제어할 수 있다.
도 12는 일부 실시예에 따른, 워터마크 데이터의 패킷 포맷을 도시한다.
일부 실시예에 따르면, 사용자 입력에 기초하여 생성된 워터마크 데이터는 도 12에 도시된 워터마크 데이터 패킷과 같은 포맷으로 패킷화될 수 있다. 워터마크 데이터 패킷은 싱크 필드(1207), 길이 필드(1209), CRC 필드(1213), RS 필드(1215) 및 페이로드 타입 필드(1201), 연장 헤더(Extended Header) 필드(1203) 및 페이로드 필드(1205)를 포함하는 데이터 필드(12110)를 포함하며, 필드 간 블랭크(1217)가 포함될 수 있다.
일부 실시예에 따르면, 페이로드 타입 필드(1201)는 페이로드에 포함된 데이터의 타입을 나타내는 정보를 포함할 수 있다. 예를 들면, 페이로드 타입 필드(1201)는 페이로드에 포함된 데이터가 사용자 입력에 관한 데이터임을 식별할 수 있는 정보가 포함될 수 있다.
일부 실시예에 따르면, 연장 헤더(Extended Header) 필드(1203)는 구현예에 따라서 생략될 수 있으며, 페이로드 타입에 대한 정보 이외의 추가적인 정보를 포함할 수 있다. 또한 일부 실시예에 따르면, 사운드코드 패킷 헤더 내에 페이로드 타입 필드(1201) 및 연장 헤더(Extended Header) 필드(1203)가 포함될 수 있다.
일부 실시예에 따르면, 페이로드 필드(1205)는 사용자 입력에 대한 정보를 포함할 수 있다. 예를 들면, 디바이스는 사용자 입력을 수신하고, 수신된 사용자 입력에 대한 정보를 페이로드 필드(1205)에 삽입함으로써, 사용자 입력을 워터마크 데이터 패킷으로 패킷화 할 수 있다.
일부 실시예에 따르면, 싱크 필드(1207)는 워터마크 데이터의 시작을 나타내는 정보를 포함할 수있다. 또한 일부 실시예에 따르면, 길이 필드(1209)는 데이터 필드(1211)의 길이를 나타내는 정보를 포함할 수 있다.
일부 실시예에 따르면, 데이터 필드(1211)는 페이로드 타입 필드(1201), 연장 헤더(Extended Header) 필드(1203) 및 페이로드 필드(1205)를 포함할 수 있다.
일부 실시예에 따르면, CRC 필드(1213) 및 RS 필드(1215)는 에러 검출 및 정정을 위한 필드를 포함할 수 있다. 또한 일부 실시예에 따르면, 블랭크(1217)란, 싱크 필드(1207)가 정확히 검출되지 않는 경우를 대비하여 비어놓은 구간을 의미할 수 있다.
일부 실시예에 따르면, 페이로드 타입 필드(1201), 연장 헤더 필드(1203), 페이로드 필드(1205)가 하나의 패킷을 구성할 수 있으며, 싱크 필드(1207), 길이 필드(1209), CRC 필드(1213), RS 필드(1215) 및 데이터 필드(1211)를 포함하는 하나의 블록 단위 내의 데이터 필드(1211) 내에 복수 개의 패킷이 포함될 수 있다. 다시 말해서, 사용자 입력에 의해 생성되는 워터마크 데이터의 포맷은 제한이 없다.
도 13 내지 도 15는 일부 실시예에 따른, 워터마크 삽입 방법에 기초한 워터마크 데이터의 검출 정확도를 나타낸다.
일부 실시예에 따르면, 워터마크 삽입 디바이스는 워터마크 데이터를 삽입한 데이터를 워터마크 검출 디바이스에게 송신할 수 있다. 송신 과정 중, 워터마크 삽입 디바이스가 송신한, 워터마크 데이터가 삽입된 데이터는 페이딩, 잡음 등으로 송신되는 데이터가 변형될 수 있으며, 워터마크 검출 디바이스는 변형된 데이터를 기준으로 워터마크 데이터를 검출하게 된다. 잡음 페이딩 등으로 변형된 데이터에서 워터마크 데이터가 명확하게 검출되도록 하기 위해서는, 워터마크 삽입 디바이스가 앞서 설명한 워터마크 삽입 방식에 따라 워터마크를 삽입해야 한다.
도 13 내지 도 15에서, m=0인 곡선은 데이터 중 비트가 0인 워터마크 비트가 검출된 것을 나타내며, m=1인 곡선은 데이터 중 비트가 1인 워터마크 데이터가 검출된 것을 나타낼 수 있다. No watermark 곡선은 워터마크 데이터가 검출되지 않은 것을 나타낼 수 있다.
또한 도 13 내지 도 15에서, 그래프의 가로축은 데이터의 검출 값으로써, 워터마크 검출 디바이스는 데이터의 검출 값에 기초하여 워터마크 데이터가 삽입되어 있는지 여부를 판단할 수 있다. 일부 실시예에 따르면, 데이터의 검출 값은 데이터의 신호 세기 값, 피크 값 또는 데이터의 픽셀 값 중 하나일 수 있다. 그래프의 세로축은 데이터의 비율을 나타낼 수 있다.
도 13은 워터마크 삽입 디바이스가 소정의 데이터에 유효 워터마크 데이터만을 특별한 위치를 선정하지 않고 삽입하는 경우, 수신 디바이스에서 워터마크 데이터의 검출 정확도를 나타낸다.
도 13의 그래프를 참조하면, m = 0일 때의 그래프와 No wartermark 일 때의 그래프가 겹쳐지고, m = 1일 때의 그래프와 No wartermark 일때의 그래프가 겹쳐진다. 즉, 데이터 내에 워터마크 데이터가 삽입되지 않은 부분에서도 0 또는 1의 워터마크 비트가 검출되는 오검출(False-alarm or Miss-detection) 현상이 발생하게 된다. 일부 실시예에 따르면, 오검출이 발생하는 경우, 워터마크 검출 디바이스는 워터마크 데이터를 정확하게 추출해낼 수 없어, 워터마크 데이터 내에 포함된 소정의 데이터를 독출해낼 수 없다.
도 14는, 워터마크 삽입 디바이스가 데이터의 특성을 고려하여 유효 워터마크 데이터를 삽입하는 위치를 결정하여 유효 워터마크 데이터를 삽입하는 경우의, 수신 디바이스에서 워터마크 데이터의 검출 정확도를 나타낸다. 일부 실시예에 따르면, 데이터의 특성을 고려한다는 의미는 사용자가 정확히 인지하지 못하는 부분을 고려한다는 의미를 포함할 수 있다.
도 14의 그래프를 참조하면, 점선은 임계 검출값을 나타낸다. 워터마크 검출 디바이스가 임계 검출값 -0.8 및 0.8을 기준으로 워터마크 데이터가 검출되는지 검출되지 않는지를 판단한다. 앞서 설명한 바와 같이 임계 검출값은 워터마크 삽입 디바이스, 워터마크 검출 디바이스 또는 사용자 입력에 의해 결정될 수 있다.
도 14는 도 13과는 다르게 m = 0일 때의 그래프와 No wartermark 일 때의 그래프가 겹쳐지지 않고, m = 1일 때의 그래프도 No wartermark 일때의 그래프가 겹쳐지지 않는다. 즉, 오검출 현상이 발생하지 않는다.
다만, 도 14의 그래프를 참조하면 No wartermark 일 때의 그래프와 m = 0, m = 1의 그래프가 매우 근접하게 위치하고 있고, No wartermark 일 때의 그래프의 편차가 넓다. 즉, 워터마크 검출 디바이스가 정확한 임계 검출 값을 결정하는 것이 어렵다. 또한 워터마크 삽입 디바이스는 정확한 워터마크 데이터의 검출을 위해 소정의 크기 이상의 세기로 워터마크 데이터를 삽입해야 하므로, 원본 데이터의 큰 변형이 발생할 수 있다.
도 15는, 워터마크 삽입 디바이스가 유효 워터마크 데이터와 제어 워터마크 데이터를 삽입하는 위치를 결정하여 유효 워터마크 데이터 및 제어 워터마크 데이터를 삽입하는 경우의, 수신 디바이스에서 워터마크 데이터의 검출 정확도를 나타낸다.
도 15의 그래프를 참조하면, 점선은 임계 검출값을 나타낸다. 워터마크 검출 디바이스가 임계 검출값 -0.7 및 0.7을 기준으로 워터마크 데이터가 검출되는지 검출되지 않는지를 판단한다. 앞서 설명한 바와 같이 임계 검출값은 워터마크 삽입 디바이스, 워터마크 검출 디바이스 또는 사용자 입력에 의해 결정될 수 있다.
도 15는 도 13 과는 다르게 m = 0일 때의 그래프와 No wartermark 일 때의 그래프가 겹쳐지지 않고, m = 1일 때의 그래프도 No wartermark 일때의 그래프가 겹쳐지지 않는다. 즉, 오검출 현상이 발생하지 않는다. 또한 도 14와도 다르게 No wartermark 일 때의 그래프와 m = 0, m = 1의 그래프가 근접하지 않고, No wartermark 일 때의 그래프의 편차가 좁다. 즉, 워터마크 검출 디바이스가 정확한 임계 검출 값을 결정하기가 도 14에 비해 쉽다. 또한 워터마크 삽입 디바이스가 제어 워터마크 데이터를 삽입함으로써, 정확하게 워터마크가 검출되지 않는 부분과 워터마크가 검출되는 부분을 구별할 수 있도록 원본 데이터를 조절하므로, 소정의 크기 이상의 세기로 워터마크 데이터를 삽입할 필요가 없어서 원본 데이터의 큰 변형이 발생하지 않는다.
도 16 내지 17은 일부 실시예에 따른, 워터마크 데이터를 삽입하는 디바이스의 블록도를 도시한다.
도 16에 도시된 바와 같이 일부 실시예에 따른 워터마크 데이터를 삽입하는 디바이스인 제 1 디바이스(101)는 크기 변경부(1601), 워터마크 삽입부(1603), 보상부(1605) 및 제어부(1607)를 포함할 수 있다. 그러나 도 16에 도시된 구성 요소가 모두 제 1 디바이스(101)의 필수 구성 요소인 것은 아니다. 도 16에 도시된 구성 요소보다 많은 구성 요소에 의해 제 1 디바이스(101)가 구현될 수도 있고, 도 16에 도시된 구성 요소보다 적은 구성 요소에 의해 제 1 디바이스(101)가 구현될 수도 있다. 또한 일부 실시예에 따르면, 워터마크 데이터를 추출하는 디바이스인 제 2 디바이스(102) 또한 제 1 디바이스(101)와 동일한 구성을 포함할 수 있다.
일부 실시예에 따르면, 크기 변경부(1601)는 원본 이미지 데이터를 소정의 크기로 변경한 제 1 이미지 데이터를 생성할 수 있다. 일부 실시예에 따르면 소정의 크기라 함은 소정의 해상도일 수 있다.
일부 실시예에 따르면, 워터마크 삽입부(1603)는 제 1 이미지 데이터에 워터마크 데이터를 삽입할 수 있다. 워터마크 삽입부(1603)이 삽입하는 워터마크 데이터는 유효 워터마크 데이터 및 제어 워터마크 데이터를 포함할 수 있다.
일부 실시예에 따르면, 워터마크 삽입부(1603)는 유효 워터마크 데이터 삽입 위치 및 제어 워터마크 데이터 삽입 위치 중 적어도 하나의 삽입 위치를 판단할 수 있다. 또한 워터마크 삽입부(1603)는, 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값 및 검출 임계값에 기초하여 제 1 이미지 데이터를 분석할 수도 있다.
일부 실시예에 따르면, 보상부(1605)는, 제 1 이미지 데이터에 워터마크 데이터가 삽입된 이미지 데이터인 제 2 이미지 데이터에 원본 이미지 데이터와 제 1 이미지 데이터의 차이 데이터를 추가할 수 있다. 또한 일부 실시예에 따르면, 보상부(1605)는 제 2 이미지를 원본 이미지 데이터와 동일한 크기로 변경하고, 변경된 크기의 제 2 이미지에 원본 이미지 데이터와 제 1 이미지 데이터의 차이 데이터를 추가할 수도 있다.
일부 실시예에 따르면, 제어부(1607)는 통상적으로 제 1 디바이스(101)의 전반적인 동작을 제어한다. 예를 들어, 제어부(1607)는 제 1 디바이스(101)에 저장된 프로그램을 실행함으로써, 제 1 디바이스(101)가 포함하는 구성요소들을 전반적으로 제어할 수 있다. 또한 제어부(1607) 적어도 하나의 프로세서를 포함할 수 있다.
도 17에 도시된 바와 같이 워터마크 삽입부(1603)는 삽입 위치 판단부(1701) 및 워터마크 검출부(1703)을 더 포함할 수 있다. 그러나 도 17에 도시된 구성 요소가 모두 제 1 디바이스(101)의 필수 구성 요소인 것은 아니다. 도 17에 도시된 구성 요소보다 많은 구성 요소에 의해 제 1 디바이스(101)가 구현될 수도 있고, 도 17에 도시된 구성 요소보다 적은 구성 요소에 의해 제 1 디바이스(101)가 구현될 수도 있다.
일부 실시예에 따르면, 삽입 위치 판단부(1701)는 유효 워터마크 데이터 삽입 위치 및 제어 워터마크 데이터 삽입 위치 중 적어도 하나의 삽입 위치를 판단할 수 있다. 또한 일부 실시예에 따르면, 삽입 위치 판단부(1701)는 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된, 전체 또는 일부의 제 1 이미지 주파수 신호를 검출 임계값과 비교할 수 있다.
일부 실시예에 따르면, 삽입 위치 판단부(1701)는 유효 워터마크 데이터의 전체 또는 일부가 검출되는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 1 삽입 위치 및 검출 임계값보다 소정의 크기 이상 크거나 작은 값을 가지는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 2 삽입 위치를 판단할 수도 있다.
또한 워터마크 삽입부(1603)는 제 1 삽입 위치에 제어 워터마크 데이터를 삽입하고, 제 2 삽입 위치에 유효 워터마크 데이터를 삽입할 수 있다. 또한 워터마크 삽입부(1603)는 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 이미지 주파수 신호에 유효 워터마크 데이터 및 제어 워터마크 데이터를 주파수 신호로 변환하여 삽입할 수도 있다.
일부 실시예에 따르면, 워터마크 검출부(1703) 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값 및 검출 임계값에 기초하여 제 1 이미지 데이터를 분석할 수도 있다.
또한 일부 실시예에 따르면, 유효 워터마크 데이터는 사용자 입력 또는 상기 원본 이미지 데이터의 정보에 기초하여 생성될 수도 있다.
도 18은 일부 실시예에 따른, 워터마크 데이터를 추출하는 디바이스의 블록도를 도시한다.
도 18에 도시된 바와 같이 일부 실시예에 따른 워터마크 데이터를 삽입하는 디바이스인 제 2 디바이스(102)는 크기 변경부(1801), 수신부(1603), 검출부(1805) 및 제어부(1607)를 포함할 수 있다. 그러나 도 18에 도시된 구성 요소가 모두 제 2 디바이스(102)의 필수 구성 요소인 것은 아니다. 도 18에 도시된 구성 요소보다 많은 구성 요소에 의해 제 2 디바이스(102)가 구현될 수도 있고, 도 18에 도시된 구성 요소보다 적은 구성 요소에 의해 제 2 디바이스(102)가 구현될 수도 있다. 또한 일부 실시예에 따르면, 워터마크 데이터를 삽입하는 디바이스인 제 1 디바이스(101) 또한 제 2 디바이스(102)와 동일한 구성을 포함할 수 있다.
일부 실시예에 따르면, 크기 변경부(1801)는 원본 데이터에 워터마크 데이터가 삽입된 제 1 데이터를 소정의 크기로 변경할 수 있다. 앞서 설명한 바와 같이 크기 변경부(1801)는 원본 데이터 내에 삽입된 워터마크 데이터를 추출하기 위해 원본 데이터를 소정의 크기로 변경할 수 있다.
일부 실시예에 따르면, 수신부(1803)는 소정의 데이터기 워터마크 데이터로써 삽입된 제 1 데이터를 수신할 수 있다.
일부 실시예에 따르면, 검출부(1805)는 소정의 크기로 변경된 제 1 데이터로부터 상기 워터마크 데이터를 추출할 수 있다. 워터마크 데이터를 추출하는 방법은 앞서 설명한 바와 대응되므로, 자세한 설명은 생략한다.
일부 실시예에 따르면, 제어부(1807)는 통상적으로 제 2 디바이스(102)의 전반적인 동작을 제어한다. 예를 들어, 제어부(1807)는 제 2 디바이스(102)에 저장된 프로그램을 실행함으로써, 제 2 디바이스(102)가 포함하는 구성요소들을 전반적으로 제어할 수 있다. 또한 제어부(1807) 적어도 하나의 프로세서를 포함할 수 있다.
일부 실시예에 따르면, 제어부(1807)는 워터마크 데이터에 기초하여 데이터를 분류하거나 소정의 동작을 수행하도록 제어할 수 있다. 제어부(1807)는 검출된 워터마크 데이터로부터 소정의 동작을 수행하라는 명령어를 획득하고, 추출된 명령어에 기초하여 소정의 동작을 수행할 수 있다. 예를 들면, 제어부(1807)는 워터마크 데이터를 파싱함으로써, 소정의 명령어를 획득할 수 있다.
일부 실시예에 따르면, 제 1 데이터는 이미지 데이터 또는, 오디오 데이터 일 수 있다. 또한 제 1 데이터에 삽입된 워터마크 데이터는 이미지 정보 또는 사용자 입력에 기초하여 생성된 데이터일 수 있다. 일부 실시예에 따르면, 이미지 정보는 제 1 데이터에 대한 정보 또는 제 1 데이터의 원본 데이터에 대한 정보를 포함할 수 있다. 또한 사용자 입력에 기초하여 생성된 데이터는 사용자 입력에 기초한 제어 정보, 시스템 설정 정보를 포함할 수도 있다.
일부 실시예에 따르면, 제 1 데이터는 서버에 의해 생성될 수도 있다. 또한 제 1 데이터에 삽입된 워터마크 데이터는 워터마크 데이터의 시작을 나타내는 싱크 필드, 워터마크 데이터의 길이를 나타내는 길이 필드, 에러 검출 및 정정을 위한 CRC 필드, RS 필드 및 페이로드 필드 중 적어도 하나를 포함하는 블록 또는 패킷 형태로 생성될 수 있다. 생성된 워터마크 데이터 패킷 또는 워터마크 데이터 블록은 제 1 데이터 내에 삽입될 수 있다.
도 19는 일부 실시예에 따른, 워터마크 데이터를 삽입하는 디바이스의 세부 블록도를 도시한다.
도 19에 도시된 바와 같이 일부 실시예에 따른 워터마크 데이터를 삽입하는 디바이스인 제 1 디바이스(101)는 크기 변경부(1601), 워터마크 삽입부(1603), 및 보상부(1605)를 포함하는 인코더(1930), 제어부(1607) 외에도 사용자 입력부(1900), 출력부(19610), 센서부(1920), 통신부(1940), A/V 입력부(1950) 및 저장부(메모리)(1960)를 더 포함할 수도 있다. 그러나 도 19에 도시된 구성 요소가 모두 제 1 디바이스(101)의 필수 구성 요소인 것은 아니다. 도 19에 도시된 구성 요소보다 많은 구성 요소에 의해 제 1 디바이스(101)가 구현될 수도 있고, 도 19에 도시된 구성 요소보다 적은 구성 요소에 의해 제 1 디바이스(101)가 구현될 수도 있다. 또한 일부 실시예에 따르면, 앞서 설명한 제 2 디바이스(102) 또한 제 1 디바이스(101)와 동일한 구성을 포함할 수 있다.
인코더(1930)는 크기 변경부(1601), 워터마크 삽입부(1603) 및 보상부(1605)를 포함할 수 있으며, 인코더(1903)가 포함하는 각 구성부는 앞서 설명한 바와 대응되므로 자세한 설명은 생략한다.
일부 실시예에 따르면, 사용자 입력 수신부(1900)는, 사용자가 제 1 디바이스(101)를 제어하기 위한 데이터를 입력하는 수단을 의미한다. 예를 들어, 사용자 입력부(1900)에는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등이 있을 수 있으나 이에 한정되는 것은 아니다.
출력부(1910)는, 오디오 신호 또는 비디오 신호 또는 진동 신호를 출력할 수 있으며, 출력부(1910)는 디스플레이부(1911), 음향 출력부(1912), 및 진동 모터(1913)를 포함할 수 있다.
디스플레이부(1911)는 제 1 디바이스(101)에서 처리되는 정보를 표시 출력한다.
한편, 디스플레이부(1911)와 터치패드가 레이어 구조를 이루어 터치 스크린으로 구성되는 경우, 디스플레이부(1911)는 출력 장치 이외에 입력 장치로도 사용될 수 있다. 디스플레이부(1911)는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전기영동 디스플레이(electrophoretic display) 중에서 적어도 하나를 포함할 수 있다. 그리고 제 1 디바이스(101)의 구현 형태에 따라 제 1 디바이스(101)는 디스플레이부(1911)를 2개 이상 포함할 수도 있다. 이때, 2개 이상의 디스플레이부(1911)는 힌지(hinge)를 이용하여 마주보게 배치될 수 있다.
음향 출력부(1912)는 통신부(1410)로부터 수신되거나 저장부(메모리)(1640)에 저장된 오디오 데이터를 출력한다. 또한, 음향 출력부(1912)는 제 1 디바이스(101)에서 수행되는 기능(예를 들어, 호신호 수신음, 메시지 수신음, 알림음)과 관련된 음향 신호를 출력한다. 이러한 음향 출력부(1912)에는 스피커(speaker), 버저(Buzzer) 등이 포함될 수 있다.
진동 모터(1913)는 진동 신호를 출력할 수 있다. 예를 들어, 진동 모터(1913)는 오디오 데이터 또는 비디오 데이터(예컨대, 호신호 수신음, 메시지 수신음 등)의 출력에 대응하는 진동 신호를 출력할 수 있다. 또한, 진동 모터(1913)는 터치스크린에 터치가 입력되는 경우 진동 신호를 출력할 수도 있다.
일부 실시예에 따르면, 센서부(1920)는, 제 1 디바이스(101)의 상태 또는 제 1 디바이스(101) 주변의 상태를 감지하고, 감지된 정보를 제어부1(405)로 전달할 수 있다.
센서부(1920)는, 지자기 센서(Magnetic sensor)(1921), 가속도 센서(Acceleration sensor)(1922), 온/습도 센서(1923), 적외선 센서(1924), 자이로스코프 센서(1925), 위치 센서(예컨대, GPS)(1926), 기압 센서(1927), 근접 센서(1928), 및 RGB 센서(1929) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 각 센서들의 기능은 그 명칭으로부터 당업자가 직관적으로 추론할 수 있으므로, 구체적인 설명은 생략하기로 한다.
일부 실시예에 따르면, 통신부(1940)는 근거리 통신부(1941), 이동 통신부(1943) 및 방송 수신부(1945)를 포함할 수 있다. 근거리 통신부(1941)는 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 자기장 통신부(Near Field Communication), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
또한 근거리 통신부(1941)가 포함하는 각 통신부들은 각각 송신부 및 수신부로 구성될 수 있다. 송신부는 워터마크 데이터가 삽입된 데이터를 포함한 모든 데이터를 제 2 디바이스 또는 서버로 송신할 수 있고, 수신부는 워터마크 데이터가 삽입된 데이터를 포함한 모든 데이터를 제 2 디바이스 또는 서버로부터 수신할 수 있다.
일부 실시예에 따르면, 이동 통신부(1943)는, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기에서, 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
방송 수신부(1945)는, 방송 채널을 통하여 외부로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 구현 예에 따라서 제 1 디바이스(101)는 방송 수신부(1945)를 포함하지 않을 수도 있다.
A/V 입력부(1950)는 오디오 신호 또는 비디오 신호 입력을 위한 것으로, 이에는 카메라(1951)와 음향 입력부(1952) 등이 포함될 수 있다. 카메라(1951)은 화상 통화모드 또는 촬영 모드에서 이미지 센서를 통해 정지영상 또는 동영상 등의 화상 프레임을 얻을 수 있다. 이미지 센서를 통해 캡쳐된 이미지는 제어부(1607) 또는 별도의 이미지 처리부(미도시)를 통해 처리될 수 있다.
카메라(1951)에서 처리된 화상 프레임은 저장부(메모리)(1960)에 저장되거나 통신부(1940)를 통하여 외부로 송신될 수 있다. 카메라(1951)는 단말기의 구성 태양에 따라 2개 이상이 구비될 수도 있다.
음향 입력부(1952)는, 외부의 음향 신호를 입력 받아 전기적인 음성 데이터로 처리한다. 일부 실시예에 따르면, 음향 입력부(1952)는 마이크로폰일 수 있으며, 상기 예시에 제한되지 않는다. 음향 입력부(1952)은 외부 디바이스, 서버 또는 사용자로부터 음향 신호를 수신할 수 있다. 마이크로폰(1952)는 외부의 음향 신호를 입력 받는 과정에서 발생 되는 잡음(noise)를 제거하기 위한 다양한 잡음 제거 알고리즘을 이용할 수 있다.
일부 실시예에 따르면, 저장부(메모리)(1960)는, 제어부(1607)의 처리 및 제어를 위한 프로그램을 저장할 수 있고, 제 1 디바이스(101)로 입력되거나 제 1 디바이스(101)로부터 출력되는 데이터를 저장할 수도 있다.
일부 실시예에 따르면, 저장부(메모리)(1960)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
또한 일부 실시예에 따르면, 저장부(메모리)(1960)에 저장된 프로그램들은 그 기능에 따라 복수 개의 모듈들로 분류할 수 있는데, 예를 들어, UI 모듈(1961), 터치 스크린 모듈(1962), 알림 모듈(1963) 등으로 분류될 수 있다.
UI 모듈(1961)은, 제 1 디바이스(101)와 연동되는 특화된 UI, GUI 등을 제공할 수 있다. 예를 들면, UI 모듈(1961)은 워터마크 데이터 삽입 버튼, 이미지 데이터 또는 오디오 데이터의 크기 변경을 위한 UI, GUI를 제공할 수 있다.
터치 스크린 모듈(1962)은 사용자의 터치 스크린 상의 터치 제스처를 감지하고, 터치 제스처에 관한 정보를 제어부(1607)로 전달할 수 있다. 일부 실시예에 따른 터치 스크린 모듈(1962)은 터치 코드를 인식하고 분석할 수 있다. 터치 스크린 모듈(1962)은 컨트롤러를 포함하는 별도의 하드웨어로 구성될 수도 있다.
터치스크린의 터치 또는 근접 터치를 감지하기 위해 터치스크린의 내부 또는 근처에 다양한 센서가 구비될 수 있다. 터치스크린의 터치를 감지하기 위한 센서의 일례로 촉각 센서가 있다. 촉각 센서는 사람이 느끼는 정도로 또는 그 이상으로 특정 물체의 접촉을 감지하는 센서를 말한다. 촉각 센서는 접촉면의 거칠기, 접촉 물체의 단단함, 접촉 지점의 온도 등의 다양한 정보를 감지할 수 있다.
또한, 터치스크린의 터치를 감지하기 위한 센서의 일례로 근접 센서가 있다.
근접 센서는 소정의 검출면에 접근하는 물체, 혹은 근방에 존재하는 물체의 유무를 전자계의 힘 또는 적외선을 이용하여 기계적 접촉이 없이 검출하는 센서를 말한다. 근접 센서의 예로는 투과형 광전 센서, 직접 반사형 광전 센서, 미러 반사형 광전 센서, 고주파 발진형 근접 센서, 정전용량형 근접 센서, 자기형 근접 센서, 적외선 근접 센서 등이 있다. 또한 사용자의 터치 제스처에는 탭, 터치&홀드, 더블 탭, 드래그, 패닝, 플릭, 드래그 앤드 드롭, 스와이프 등이 있을 수 있다.
알림 모듈(1963)은 제 1 디바이스(101)의 이벤트 발생을 알리기 위한 신호를 발생할 수 있다. 재 1 디바이스(101)에서 발생되는 이벤트의 예로는 호 신호 수신, 메시지 수신, 키 신호 입력, 일정 알림 등이 있다. 알림 모듈(1963)은 디스플레이부(191)를 통해 비디오 신호 형태로 알림 신호를 출력할 수도 있고, 음향 출력부(1912)를 통해 오디오 신호 형태로 알림 신호를 출력할 수도 있고, 진동 모터(1913)를 통해 진동 신호 형태로 알림 신호를 출력할 수도 있다.
본 발명에 따른 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다. 소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다. 여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
본 발명에서 인용하는 공개 문헌, 특허 출원, 특허 등을 포함하는 모든 문헌들은 각 인용 문헌이 개별적으로 및 구체적으로 병합하여 나타내는 것 또는 본 발명에서 전체적으로 병합하여 나타낸 것과 동일하게 본 발명에 병합될 수 있다.
본 발명의 이해를 위하여, 도면에 도시된 바람직한 실시 예들에서 참조 부호를 기재하였으며, 본 발명의 실시 예들을 설명하기 위하여 특정 용어들을 사용하였으나, 특정 용어에 의해 본 발명이 한정되는 것은 아니며, 본 발명은 당업자에 있어서 통상적으로 생각할 수 있는 모든 구성 요소들을 포함할 수 있다.
본 발명은 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 발명은 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 본 발명에의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 본 발명은 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 발명은 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. ‘매커니즘’, ‘요소’, ‘수단’, ‘구성’과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, ‘필수적인’, ‘중요하게’ 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
본 발명의 명세서(특히 특허청구범위에서)에서 ‘상기’의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 본 발명에서 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 적용한 발명을 포함하는 것으로서(이에 반하는 기재가 없다면), 발명의 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다. 마지막으로, 본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.

Claims (32)

  1. 워터마크를 삽입하는 방법에 있어서,
    원본 이미지 데이터를 소정의 크기로 변경한 제 1 이미지 데이터를 생성하는 단계;
    상기 제 1 이미지 데이터에 워터마크 데이터를 삽입하는 단계; 및
    상기 워터마크 데이터가 삽입된 이미지 데이터인 제 2 이미지 데이터에 상기 원본 이미지 데이터와 상기 제 1 이미지 데이터의 차이 데이터를 추가하는 단계를 포함하는 방법.
  2. 제 1 항에 있어서,
    상기 워터마크 데이터는 유효 워터마크 데이터 및 제어 워터마크 데이터를 포함하는 것을 특징으로 하는 방법.
  3. 제 2 항에 있어서,
    상기 워터마크 데이터를 삽입하는 단계는,
    유효 워터마크 데이터 삽입 위치 및 제어 워터마크 데이터 삽입 위치 중 적어도 하나를 판단하는 단계; 및
    상기 판단 결과에 기초하여, 제 1 이미지 데이터 내에 상기 유효 워터마크 데이터 및 상기 제어 워터마크 데이터를 삽입하는 단계를 포함하는 방법.
  4. 제 3 항에 있어서,
    상기 판단하는 단계는,
    상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값 및 검출 임계값에 기초하여 상기 제 1 이미지 데이터를 분석하는 단계;
    상기 분석 결과에 기초하여, 제 1 이미지 데이터 내에 상기 유효 워터마크 데이터를 삽입할 위치 및 상기 제어 워터마크 데이터를 삽입할 위치를 판단하는 단계를 포함하는 방법.
  5. 제 4 항에 있어서,
    상기 분석하는 단계는,
    상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 이미지 주파수 신호를 상기 검출 임계값과 비교하는 것을 특징으로 하는 방법.
  6. 제 5 항에 있어서,
    상기 유효 워터마크 데이터를 삽입할 위치 및 상기 제어 워터마크 데이터를 삽입할 위치를 판단하는 단계는,
    상기 비교 결과에 기초하여, 상기 유효 워터마크 데이터의 전체 또는 일부가 검출되는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 1 삽입 위치 및 상기 검출 임계값보다 소정의 크기 이상 크거나 작은 값을 가지는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 2 삽입 위치를 판단하는 단계를 포함하는 방법.
  7. 제 6 항에 있어서,
    상기 삽입하는 단계는,
    상기 제 1 삽입 위치에 제어 워터마크 데이터를 삽입하고, 상기 제 2 삽입 위치에 유효 워터마크 데이터를 삽입하는 단계를 포함하는 방법.
  8. 제 3 항에 있어서,
    상기 삽입하는 단계는,
    상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 이미지 주파수 신호에 상기 유효 워터마크 데이터 및 상기 제어 워터마크 데이터를 주파수 신호로 변환하여 삽입하는 것을 특징으로 하는 방법.
  9. 제 1 항에 있어서,
    상기 추가하는 단계는,
    상기 제 2 이미지 데이터를 원본 이미지 데이터와 동일한 크기로 변경하는 단계;
    상기 변경된 크기의 제 2 이미지 데이터에 상기 원본 이미지 데이터와 상기 제 1 이미지 데이터의 차이 데이터를 추가하는 단계를 포함하는 방법.
  10. 제 1 항에 있어서,
    상기 추가하는 단계는,
    상기 제 1 이미지를 원본 이미지 데이터와 동일한 크기로 변경하는 단계;
    상기 제 2 이미지를 원본 이미지 데이터와 동일한 크기로 변경하는 단계; 및
    상기 원본 이미지 데이터와 변경된 크기의 제 1 이미지 데이터의 차이 데이터를, 상기 변경된 크기의 제 2 이미지 데이터에 추가하는 단계를 포함하는 방법.
  11. 제 3 항에 있어서,
    상기 유효 워터마크 데이터는 사용자 입력 또는 상기 원본 이미지 데이터의 정보에 기초하여 생성되는 것을 특징으로 하는 방법.
  12. 워터마크 데이터의 추출 방법에 있어서,
    소정의 데이터가 워터마크 데이터로써 삽입된 제 1 데이터를 수신하는 단계;
    상기 제 1 데이터를 소정의 크기로 변경하는 단계; 및
    상기 소정의 크기로 변경된 제 1 데이터로부터 상기 워터마크 데이터를 추출하는 단계를 포함하며,
    상기 워터마크 데이터에 기초하여 상기 데이터를 분류하거나 소정의 동작을 수행하도록 제어하는 단계를 포함하는 방법.
  13. 제 12 항에 있어서,
    상기 워터마크 데이터는 이미지 정보를 포함하고,
    상기 제 1 데이터는 원본 이미지 데이터의 크기가 변경된 이미지 데이터인 것을 특징으로 하는 방법.
  14. 제 13 항에 있어서,
    상기 제 1 데이터는 서버에 의해 생성된 것을 특징으로 하는 방법.
  15. 제 12 항에 있어서,
    상기 제 1 데이터는 오디오 데이터를 포함하고,
    상기 워터마크 데이터는 사용자 입력에 기초하여 생성된 것을 특징으로 하는 방법.
  16. 제 15 항에 있어서,
    상기 워터마크 데이터는 워터마크 데이터의 시작을 나타내는 싱크 필드, 워터마크 데이터의 길이를 나타내는 길이 필드, 에러 검출 및 정정을 위한 CRC 필드, RS 필드 및 페이로드 필드 중 적어도 하나를 포함하는 블록 또는 패킷 형태로 생성되는 것을 특징으로 하는 방법.
  17. 워터마크를 삽입하는 디바이스에 있어서,
    원본 이미지 데이터를 소정의 크기로 변경한 제 1 이미지 데이터를 생성하는 크기 변경부;
    상기 제 1 이미지 데이터에 워터마크 데이터를 삽입하는 워터마크 삽입부; 및
    상기 워터마크 데이터가 삽입된 이미지 데이터인 제 2 이미지 데이터에 상기 원본 이미지 데이터와 상기 제 1 이미지 데이터의 차이 데이터를 추가하는 보상부를 포함하는 디바이스.
  18. 제 17 항에 있어서,
    상기 워터마크 데이터는 유효 워터마크 데이터 및 제어 워터마크 데이터를 포함하는 것을 특징으로 하는 디바이스.
  19. 제 18 항에 있어서,
    상기 워터마크 삽입부는,
    유효 워터마크 데이터 삽입 위치 및 제어 워터마크 데이터 삽입 위치 중 적어도 하나의 삽입 위치를 판단하는 삽입 위치 판단부를 더 포함하고,
    상기 워터마크 삽입부는, 상기 판단 결과에 기초하여, 제 1 이미지 데이터 내에 상기 유효 워터마크 데이터 및 상기 제어 워터마크 데이터를 삽입하는 것을 특징으로 하는 디바이스.
  20. 제 19 항에 있어서,
    상기 워터마크 삽입부는 상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값 및 검출 임계값에 기초하여 상기 제 1 이미지 데이터를 분석하는 워터마크 검출부를 더 포함하고,
    상기 삽입 위치 판단부는, 상기 분석 결과에 기초하여, 제 1 이미지 데이터 내에 상기 유효 워터마크 데이터를 삽입할 위치 및 상기 제어 워터마크 데이터를 삽입할 위치를 판단하는 것을 특징으로 하는 디바이스.
  21. 제 20 항에 있어서,
    상기 워터마크 검출부는,
    상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 이미지 주파수 신호를 상기 검출 임계값과 비교하는 것을 특징으로 하는 디바이스.
  22. 제 21 항에 있어서,
    상기 삽입 위치 판단부는,
    상기 비교 결과에 기초하여, 상기 유효 워터마크 데이터의 전체 또는 일부가 검출되는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 1 삽입 위치 및 상기 검출 임계값보다 소정의 크기 이상 크거나 작은 값을 가지는 것으로 판단되는 픽셀 또는 픽셀 그룹의 위치인 제 2 삽입 위치를 판단하는 것을 특징으로 하는 디바이스.
  23. 제 22 항에 있어서,
    상기 워터마크 삽입부는,
    상기 제 1 삽입 위치에 제어 워터마크 데이터를 삽입하고, 상기 제 2 삽입 위치에 유효 워터마크 데이터를 삽입하는 것을 특징으로 하는 디바이스.
  24. 제 19 항에 있어서,
    상기 워터마크 삽입부는,
    상기 제 1 이미지 데이터 내의 소정의 픽셀 또는 소정의 픽셀 그룹들의 픽셀 값에 기초하여 주파수 신호로 변환된 전체 또는 일부의 제 1 이미지 주파수 신호에 상기 유효 워터마크 데이터 및 상기 제어 워터마크 데이터를 주파수 신호로 변환하여 삽입하는 것을 특징으로 하는 디바이스.
  25. 제 17 항에 있어서,
    상기 보상부는,
    상기 제 2 이미지를 원본 이미지 데이터와 동일한 크기로 변경하고, 상기 변경된 크기의 제 2 이미지에 상기 원본 이미지 데이터와 상기 제 1 이미지 데이터의 차이 데이터를 추가하는 것을 특징으로 하는 디바이스.
  26. 제 18 항에 있어서,
    상기 유효 워터마크 데이터는 사용자 입력 또는 상기 원본 이미지 데이터의 정보에 기초하여 생성되는 것을 특징으로 하는 디바이스.
  27. 워터마크 데이터를 추출하는 디바이스에 있어서,
    소정의 데이터가 워터마크 데이터로써 삽입된 제 1 데이터를 수신하는 수신부;
    상기 제 1 데이터를 소정의 크기로 변경하는 크기 변경부;
    상기 소정의 크기로 변경된 제 1 데이터로부터 상기 워터마크 데이터를 추출하는 워터마크 검출부; 및
    상기 워터마크 데이터에 기초하여 상기 데이터를 분류하거나 소정의 동작을 수행하도록 제어하는 제어부를 포함하는 디바이스.
  28. 제 27 항에 있어서,
    상기 워터마크 데이터는 이미지 정보를 포함하고,
    상기 제 1 데이터는 원본 이미지 데이터의 크기가 변경된 이미지 데이터인 것을 특징으로 하는 디바이스.
  29. 제 28 항에 있어서,
    상기 제 1 데이터는 서버에 의해 생성된 것을 특징으로 하는 디바이스.
  30. 제 27 항에 있어서,
    상기 제 1 데이터는 오디오 데이터 포함하고,
    상기 워터마크 데이터는 사용자 입력에 기초하여 생성된 것을 특징으로 하는 디바이스.
  31. 제 30 항에 있어서,
    상기 워터마크 데이터는 워터마크 데이터의 시작을 나타내는 싱크 필드, 워터마크 데이터의 길이를 나타내는 길이 필드, 에러 검출 및 정정을 위한 CRC 필드, RS 필드 및 페이로드 필드 중 적어도 하나를 포함하는 블록 또는 패킷 형태로 생성되는 것을 특징으로 하는 디바이스.
  32. 제 1 항 내지 제 16 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020150119822A 2015-08-25 2015-08-25 워터마크 데이터 삽입 방법, 장치 및 시스템 KR102094510B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020150119822A KR102094510B1 (ko) 2015-08-25 2015-08-25 워터마크 데이터 삽입 방법, 장치 및 시스템
US15/207,945 US9947066B2 (en) 2015-08-25 2016-07-12 Method, apparatus and system for inserting watermark data
PCT/KR2016/007655 WO2017034155A1 (en) 2015-08-25 2016-07-14 Method, apparatus and system for inserting watermark data
EP16839445.0A EP3286720A4 (en) 2015-08-25 2016-07-14 Method, apparatus and system for inserting watermark data
CN201610730014.8A CN106488266B (zh) 2015-08-25 2016-08-25 用于插入水印数据的方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150119822A KR102094510B1 (ko) 2015-08-25 2015-08-25 워터마크 데이터 삽입 방법, 장치 및 시스템

Publications (2)

Publication Number Publication Date
KR20170024489A true KR20170024489A (ko) 2017-03-07
KR102094510B1 KR102094510B1 (ko) 2020-03-27

Family

ID=58095987

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150119822A KR102094510B1 (ko) 2015-08-25 2015-08-25 워터마크 데이터 삽입 방법, 장치 및 시스템

Country Status (5)

Country Link
US (1) US9947066B2 (ko)
EP (1) EP3286720A4 (ko)
KR (1) KR102094510B1 (ko)
CN (1) CN106488266B (ko)
WO (1) WO2017034155A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190026262A (ko) * 2017-09-04 2019-03-13 한국후지필름 주식회사 워터마크가 삽입된 사진 촬영 서비스 시스템 및 그 제공방법
KR20220142849A (ko) * 2021-04-15 2022-10-24 주식회사 클레슨 워터 마크를 통한 불법 복제 방지 시스템 및 방법

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107911753B (zh) * 2017-11-28 2021-01-22 百度在线网络技术(北京)有限公司 用于在视频中添加数字水印的方法和装置
US11200634B2 (en) 2018-01-26 2021-12-14 Ford Global Technologies, Llc Dynamic watermarking of vehicle camera images
CN113515727B (zh) * 2019-05-13 2024-05-07 创新先进技术有限公司 基于区块链的图片处理方法及装置
CN112017092A (zh) * 2019-05-30 2020-12-01 阿里巴巴集团控股有限公司 水印检测模型的生成和水印检测方法、装置及设备
US11288763B1 (en) * 2019-06-21 2022-03-29 Gopro, Inc. Systems and methods for visually encoding information into a pixel-based image
US20220335560A1 (en) * 2019-12-05 2022-10-20 Google Llc Watermark-Based Image Reconstruction
CN118160316A (zh) * 2021-11-04 2024-06-07 Lg电子株式会社 与nft市场联动的tv平台以及该tv平台的控制方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070064940A1 (en) * 1999-03-24 2007-03-22 Blue Spike, Inc. Utilizing data reduction in steganographic and cryptographic systems
US20110007936A1 (en) * 2000-01-13 2011-01-13 Rhoads Geoffrey B Encoding and Decoding Media Signals

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7123718B1 (en) * 1999-03-24 2006-10-17 Blue Spike, Inc. Utilizing data reduction in stegnographic and cryptographic systems
JP3570213B2 (ja) 1998-03-27 2004-09-29 株式会社日立製作所 電子透かし画像処理方法
US6553127B1 (en) * 1998-05-20 2003-04-22 Macrovision Corporation Method and apparatus for selective block processing
US6654479B1 (en) 1999-08-19 2003-11-25 Academia Sinica Cocktail watermarking on images
US7058201B2 (en) 2001-03-28 2006-06-06 Lg Electronics Inc. Method of embedding watermark into digital image
US7266216B2 (en) 2003-08-07 2007-09-04 International Business Machines Corporation Inserting and detecting watermarks in images derived from a source image
JP4809840B2 (ja) 2005-08-04 2011-11-09 日本電信電話株式会社 電子透かし埋め込み方法、電子透かし埋め込み装置、及びプログラム
KR20080019438A (ko) 2006-08-28 2008-03-04 주식회사 마크애니 차분영상을 이용한 리버서블 워터마킹 알고리즘
US20100058065A1 (en) * 2006-12-11 2010-03-04 Koninklijke Philips Electronics N.V. Extracting auxiliary data from a host signal
JP5270674B2 (ja) 2007-06-29 2013-08-21 トムソン ライセンシング ウォーターマークデータの挿入のためにデータを処理する方法、データソースに埋め込まれたウォーターマークデータを検出する方法、ウォーターマークデータの埋め込み処理により生成された検出データを使用して、データソースに埋め込まれたウォーターマークデータを検出する方法、データソースに埋め込まれたウォーターマークを検出する装置及びプログラム記憶媒体
CN101571945B (zh) * 2008-04-30 2017-07-07 华为技术有限公司 嵌入水印的方法、检测水印的方法及装置
FR3004051A1 (fr) 2013-03-29 2014-10-03 France Telecom Procede et dispositif de tatouage d'une sequence d'images, procede et dispositif d'authentification d'une sequence d'images tatouees et programme d'ordinateur correspondant.
US9621760B2 (en) 2013-06-07 2017-04-11 Digimarc Corporation Information coding and decoding in spectral differences

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070064940A1 (en) * 1999-03-24 2007-03-22 Blue Spike, Inc. Utilizing data reduction in steganographic and cryptographic systems
US20110007936A1 (en) * 2000-01-13 2011-01-13 Rhoads Geoffrey B Encoding and Decoding Media Signals

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190026262A (ko) * 2017-09-04 2019-03-13 한국후지필름 주식회사 워터마크가 삽입된 사진 촬영 서비스 시스템 및 그 제공방법
KR20220142849A (ko) * 2021-04-15 2022-10-24 주식회사 클레슨 워터 마크를 통한 불법 복제 방지 시스템 및 방법

Also Published As

Publication number Publication date
KR102094510B1 (ko) 2020-03-27
US20170061562A1 (en) 2017-03-02
EP3286720A1 (en) 2018-02-28
EP3286720A4 (en) 2018-03-14
US9947066B2 (en) 2018-04-17
CN106488266A (zh) 2017-03-08
WO2017034155A1 (en) 2017-03-02
CN106488266B (zh) 2021-10-26

Similar Documents

Publication Publication Date Title
KR102094510B1 (ko) 워터마크 데이터 삽입 방법, 장치 및 시스템
US11755642B2 (en) Detecting media watermarks in magnetic field data
AU2020217384B2 (en) Audio watermarking for people monitoring
CN106961655B (zh) 在无线通信系统中用于检测伪造通告器的装置和方法
KR20150020319A (ko) 콘텐츠 전달 및 관리를 위한 시스템 및 방법
KR20080058171A (ko) 카메라 템퍼링 검출
KR102319419B1 (ko) 디바이스들 간의 거리를 결정하는 방법 및 디바이스
US20150223017A1 (en) Method for provisioning a person with information associated with an event
EP2856765B1 (en) Method and home device for outputting response to user input
KR101679849B1 (ko) 이동 단말기를 이용한 자동 경보 방법 및 시스템
JP2012074999A (ja) 画像データ伝送システム、サーバ装置、クライアント端末、画像データ伝送方法、及び制御プログラム
US20240114189A1 (en) Video streaming authorization
KR20140094378A (ko) 디지털 기기 및 상기 디지털 기기에서 이미지 식별 방법
KR101284754B1 (ko) 불법 촬영된 소프트웨어 개발 문서의 자동유출 방지방법 및 방지시스템
SG177037A1 (en) System for real-time information transfer from movie to remote device
GB2589039A (en) Audio watermarking for people monitoring

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant