KR102564641B1 - 워터마크 데이터의 임베딩 및 추출 방법 - Google Patents
워터마크 데이터의 임베딩 및 추출 방법 Download PDFInfo
- Publication number
- KR102564641B1 KR102564641B1 KR1020220103997A KR20220103997A KR102564641B1 KR 102564641 B1 KR102564641 B1 KR 102564641B1 KR 1020220103997 A KR1020220103997 A KR 1020220103997A KR 20220103997 A KR20220103997 A KR 20220103997A KR 102564641 B1 KR102564641 B1 KR 102564641B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- data
- watermark
- block
- watermark data
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
- G06T1/005—Robust watermarking, e.g. average attack or collusion attack resistant
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0065—Extraction of an embedded watermark; Reliable detection
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Editing Of Facsimile Originals (AREA)
- Image Processing (AREA)
Abstract
본 발명의 일 실시예를 통해 해결하고자 하는 기술적 과제는, 난수열을 이용하여 데이터를 임베딩 함으로써, 추출 시 인식율이 개선되고, 보안성도 개선되는 방법 및 그 방법이 적용된 장치를 제공하는 것이다. 상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 임베딩 방법은 노이즈 베이스 이미지를 M x M 픽셀을 가진 블록 단위로 구성하는 단계, 각각의 상기 블록 별로, 상기 블록에 속한 모든 픽셀의 픽셀 값을 단일화하는 단계 및 상기 각각의 블록을 순회하면서 상기 워터마크 데이터를 이용하여 상기 각각의 블록의 일부 픽셀의 픽셀 값을 수정함으로써 상기 노이즈 베이스 이미지를 변환하는 단계를 포함하고, 상기 노이즈 베이스 이미지를 변환하는 단계는, 상기 워터마크 데이터 이용하여 상기 각각의 블록마다 순회하면서 기 저장된 난수열의 난수를 순차적으로 채택하고 채택된 난수에 대응되는 규칙으로 상기 일부 픽셀의 픽셀 값을 수정하는 단계를 포함할 수 있다.
Description
본 발명은 워터마크 데이터의 임베딩(embedding) 및 추출 방법에 관한 것이다. 보다 자세하게는 인간의 시각으로는 인식되지 않으나, 이미지 프로세싱을 통하여 추출될 수 있는 방식으로 워터마크 데이터를 이미지에 임베딩 하고, 그렇게 임베딩 된 워터마크 데이터를 이미지에서 추출하는 방법에 관한 것이다.
워터마킹 기술을 활용하면, 원본에는 눈에 잘 보이지 않다가, 무단 복제 시 드러나는 워터마크 데이터 또는 워터마킹 텍스쳐를 오리지널 이미지에 삽입할 수 있다. 이러한 워터마킹 기술은 진품 인증 또는 진본 인증 등의 용도로 널리 활용되고 있다. 그러나, 인간에 눈에 보이지 않고, 컴퓨팅 장치를 통한 이미지 프로세싱을 거치면 추출이 가능하지만, 무단 복제 등의 경우에는 추출이 불가능해지는 형태의 워터마킹 기술은 제공되지 못하고 있다.
종래 워터마크 기술은 한가지 방법의 규칙으로 데이터를 임베딩 함으로써, 동기화 신호(Synchronization Signal)를 훼손시켜 추출 시 인식율이 저하되는 문제가 발생한다. 나아가, 한가지 방법의 규칙으로 데이터를 임베딩 하여 일정한 패턴이 형성됨으로써, 데이터가 임베딩 되는 노이즈 베이스 이미지의 유출에 의한 보안의 우려가 발생한다.
본 발명의 일 실시예를 통해 해결하고자 하는 다른 기술적 과제는, 난수열을 이용하여 데이터를 임베딩 함으로써, 추출 시 인식율이 개선되고, 보안성도 개선되는 방법 및 그 방법이 적용된 장치를 제공하는 것이다.
본 발명의 일 실시예를 통해 해결하고자 하는 또 다른 기술적 과제는, 노이즈 베이스 이미지의 형태를 변경함으로써, 오리지널 이미지에 적합한 형태의 워터마크를 제공하는 방법 및 그 방법이 적용된 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 기술적 과제는 이미지로부터 워터마크 데이터의 존재 여부를 판정하고 워터마크 데이터를 추출하는 과정에 소요되는 시간과 컴퓨팅 파워를 절감하는 추출 방법을 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 임베딩 방법은 노이즈 베이스 이미지를 M x M 픽셀을 가진 블록 단위로 구성하는 단계, 각각의 상기 블록 별로, 상기 블록에 속한 모든 픽셀의 픽셀 값을 단일화 하는 단계 및 상기 각각의 블록을 순회하면서 상기 워터마크 데이터를 이용하여 상기 각각의 블록의 일부 픽셀의 픽셀 값을 수정함으로써 상기 노이즈 베이스 이미지를 변환하는 단계를 포함하고, 상기 노이즈 베이스 이미지를 변환하는 단계는, 상기 워터마크 데이터 이용하여 상기 각각의 블록마다 순회하면서 기 저장된 난수열의 난수를 순차적으로 채택하고 채택된 난수에 대응되는 규칙으로 상기 일부 픽셀의 픽셀 값을 수정하는 단계를 포함할 수 있다.
일 실시예에서, 상기 M x M 픽셀은, 2 x 2 픽셀이고, 상기 저장된 난수열은,
6가지 경우의 수 중 어느 한 수에 해당하는 난수의 배열이고, 상기 M x M 픽셀의 픽셀 값을 수정하는 단계는, 상기 각각의 2 x 2 픽셀 마다 순회하면서 상기 채택된 난수에 대응되는 규칙으로 상기 2 x 2 픽셀의 픽셀 값을 수정하는 단계를 포함할 수 있다.
일 실시예에서, 상기 오리지널 이미지의 종횡비를 얻는 단계를 더 포함하고, 상기 종횡비가 기준 범위에 해당하는 경우 상기 노이즈 베이스 이미지는 상기 종횡비에 대응되는 형태의 직사각형 이미지일 수 있다.
일 실시예에서, 상기 종횡비에 대응되는 형태의 직사각형은 종횡비가 고정된 형태의 직사각형에 해당할 수 있다.
일 실시예에서, 상기 종횡비에 대응되는 형태의 직사각형은, 종횡비가 상기 오리지널 이미지의 종횡비와 동일한 형태의 직사각형에 해당할 수 있다.
일 실시예에서, 상기 오리지널 이미지의 무늬 가로 세로 경향성을 수치로 얻는 단계를 더 포함하고, 상기 수치가 기준치 이하에 해당하는 경우 상기 노이즈 베이스 이미지는 상기 수치에 대응되는 형태의 직사각형 이미지일 수 있다.
일 실시예에서, 상기 경향성을 수치로 얻는 단계는, 상기 오리지널 이미지의 푸리에 변환 주파수 도메인의 크기 스펙트럼에서 피크 좌표가 가장 인접한 축과의 최소 거리를 얻는 단계를 포함할 수 있다.
일 실시예에서, 상기 직사각형은, 상기 피크 좌표와 가장 인접한 상기 축이 x축에 해당하는 경우, 직사각형의 세로 길이가 가로 길이 보다 더 긴 직사각형일 수 있다.
일 실시예에서, 상기 직사각형은, 상기 피크 좌표와 인접한 상기 축이 y축에 해당하는 경우, 직사각형의 가로 길이가 세로 길이 보다 더 긴 직사각형일 수 있다.
일 실시예에서, 상기 난수열의 난수가 연속적으로 기준 횟수 이상 채택되는 경우, 채택된 상기 난수를 제외한 다른 수로 치환되는 단계를 더 포함할 수 있다.
상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 데이터 추출 방법은, 이미지를 M x M 픽셀로 구성된 블록 단위로 블록화하는 단계 및 M x M 픽셀로 구성된 블록 단위로 블록화 된 노이즈 베이스를 이용하여, 상기 이미지의 각 블록을 순회하면서 데이터를 추출하는 단계를 포함하되, 상기 이미지의 각 블록을 순회하면서 데이터를 추출하는 단계는, 저장된 난수열을 이용하여 각각의 블록마다 데이터 추출 규칙을 결정하는 단계 및 결정된 상기 규칙을 이용하여 상기 각각의 블록마다 상기 워터마크 데이터를 추출하는 단계를 포함할 수 있다.
일 실시예에서, 상기 이미지로부터 난수열 식별자를 획득하는 단계를 더 포함하고, 상기 이미지의 각 블록을 순회하면서 상기 워터마크 데이터를 추출하는 단계는, 상기 저장된 난수열들 중 상기 난수열 식별자가 가리키는 난수열을 참조하여 상기 각각의 블록마다 상기 워터마크 데이터 추출 규칙을 결정하는 단계를 포함할 수 있다.
일 실시예에서, 워터마크 데이터 추출 장치는, 이미지 촬영부, 유사도 판정부 및 데이터 추출부를 포함하되, 상기 데이터 추출부는, 상기 이미지 촬영부로부터 획득된 촬영 이미지 내의 각각의 블록을 순회하고, 저장된 난수열을 이용하여 각각의 블록마다 데이터 추출 규칙을 결정하고, 결정된 상기 규칙을 이용하여 상기 각각의 블록마다 상기 워터마크 데이터를 추출하고, 상기 추출된 데이터를 출력할 수 있다.
도 1은 본 발명의 일 실시예에 따른 워터마크 데이터의 임베딩 방법 및 본 발명의 다른 실시예에 따른 워터마크 데이터의 추출 방법이 활용되는 상황을 설명하기 위한 개념도이다.
도 2는 본 발명의 몇몇 실시예에 따른 워터마크 데이터의 임베딩 방법에 따라 워터마크 데이터가 임베딩 된 이미지와 오리지널 이미지의 비교를 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 워터마크 데이터의 임베딩 방법의 순서도이다.
도 4는 도 3을 참조하여 이해될 수 있는 워터마크 데이터의 임베딩 방법의 일부 동작을 보다 상세하게 설명하기 위한 순서도이다.
도 5는 도 4를 참조하여 이해될 수 있는 일부 동작의 결과로 노이즈 베이스가 블록화 된 결과를 설명하기 위한 도면이다.
도 6은 도 4를 참조하여 이해될 수 있는 워터마크 데이터의 임베딩 방법의 일부 동작을 보다 상세하게 설명하기 위한 순서도이다.
도 7은 도6을 참조하여 이해될 수 있는 워터마크 데이터의 임베딩 방법의 일부 동작을 보다 상세하게 설명하기 위한 순서도이다.
도 8은 도 7에서 참조될 수 있는 난수에 대응하는 규칙을 예시하는 예시도이다.
도 9는 본 발명의 몇몇 실시예에서 참조될 수 있는 워터마크 데이터 임베딩을 위한 블록 순회를 설명하기 위한 도면이다.
도 10 내지 13은 도 7을 참조하여 이해될 수 있는 워터마크 데이터의 임베딩 방법을 상세하게 예시하기 위한 예시도이다.
도 14는 본 발명의 일 실시예에 따른 워터마크 데이터의 임베딩 방법을 나타낸 개념도이다.
도 15 및 16은 본 발명의 몇몇 실시예에서 참조될 수 있는 동기화 신호에 대한 설명을 위한 도면이다.
도 17은 본 발명의 일 실시예에 따른 워터마크 데이터의 임베딩 방법을 보다 상세하게 설명하기 위한 도면이다.
도 18 내지 20은 도 17을 참조하여 이해될 수 있는 워터마크 데이터의 임베딩 방법을 구체적으로 예시하는 예시도이다.
도 21은 본 발명의 다른 실시예에 따른 워터마크 데이터 추출 방법의 순서도이다.
도 22는 본 발명의 일 실시예에 따른 워터마크 데이터 추출 방법에 있어서, 촬영된 이미지의 전처리가 필요한 이유를 설명하기 위한 도면이다.
도 23a 내지 도 23c는, 도 21을 참조하여 이해될 수 있는 워터마크 데이터 추출 방법에 있어서, 촬영 이미지로부터 복수의 이미지 블록들을 식별하는 동작을 설명하기 위한 도면이다.
도 24는 도 21을 참조하여 이해될 수 있는 워터마크 데이터 추출 방법에 있어서, 각 이미지 블록에 대하여 제1 유사도를 판정하고 회전각 및 스케일을 획득하는 동작을 자세히 설명하기 위한 상세 순서도이다.
도 25는 촬영된 이미지의 전처리 결과를 설명하기 위한 도면이다.
도 26은 도 21을 참조하여 이해될 수 있는 워터마크 데이터 추출 방법에 있어서, 선정된 이미지 블록에 대하여 제2 유사도를 판정하고 기준점을 획득하는 동작을 자세히 설명하기 위한 상세 순서도이다.
도 27은 도 21을 참조하여 이해될 수 있는 워터마크 데이터 추출 방법의 데이터 추출 관련 동작을 자세히 설명하기 위한 상세 순서도이다.
도 28은 본 발명의 또 다른 실시예에 따른 워터마크 데이터 임베딩 장치의 블록 구성도이다.
도 29는 본 발명의 또 다른 실시예에 따른 워터마크 데이터 추출 장치의 블록 구성도이다.
도 2는 본 발명의 몇몇 실시예에 따른 워터마크 데이터의 임베딩 방법에 따라 워터마크 데이터가 임베딩 된 이미지와 오리지널 이미지의 비교를 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 워터마크 데이터의 임베딩 방법의 순서도이다.
도 4는 도 3을 참조하여 이해될 수 있는 워터마크 데이터의 임베딩 방법의 일부 동작을 보다 상세하게 설명하기 위한 순서도이다.
도 5는 도 4를 참조하여 이해될 수 있는 일부 동작의 결과로 노이즈 베이스가 블록화 된 결과를 설명하기 위한 도면이다.
도 6은 도 4를 참조하여 이해될 수 있는 워터마크 데이터의 임베딩 방법의 일부 동작을 보다 상세하게 설명하기 위한 순서도이다.
도 7은 도6을 참조하여 이해될 수 있는 워터마크 데이터의 임베딩 방법의 일부 동작을 보다 상세하게 설명하기 위한 순서도이다.
도 8은 도 7에서 참조될 수 있는 난수에 대응하는 규칙을 예시하는 예시도이다.
도 9는 본 발명의 몇몇 실시예에서 참조될 수 있는 워터마크 데이터 임베딩을 위한 블록 순회를 설명하기 위한 도면이다.
도 10 내지 13은 도 7을 참조하여 이해될 수 있는 워터마크 데이터의 임베딩 방법을 상세하게 예시하기 위한 예시도이다.
도 14는 본 발명의 일 실시예에 따른 워터마크 데이터의 임베딩 방법을 나타낸 개념도이다.
도 15 및 16은 본 발명의 몇몇 실시예에서 참조될 수 있는 동기화 신호에 대한 설명을 위한 도면이다.
도 17은 본 발명의 일 실시예에 따른 워터마크 데이터의 임베딩 방법을 보다 상세하게 설명하기 위한 도면이다.
도 18 내지 20은 도 17을 참조하여 이해될 수 있는 워터마크 데이터의 임베딩 방법을 구체적으로 예시하는 예시도이다.
도 21은 본 발명의 다른 실시예에 따른 워터마크 데이터 추출 방법의 순서도이다.
도 22는 본 발명의 일 실시예에 따른 워터마크 데이터 추출 방법에 있어서, 촬영된 이미지의 전처리가 필요한 이유를 설명하기 위한 도면이다.
도 23a 내지 도 23c는, 도 21을 참조하여 이해될 수 있는 워터마크 데이터 추출 방법에 있어서, 촬영 이미지로부터 복수의 이미지 블록들을 식별하는 동작을 설명하기 위한 도면이다.
도 24는 도 21을 참조하여 이해될 수 있는 워터마크 데이터 추출 방법에 있어서, 각 이미지 블록에 대하여 제1 유사도를 판정하고 회전각 및 스케일을 획득하는 동작을 자세히 설명하기 위한 상세 순서도이다.
도 25는 촬영된 이미지의 전처리 결과를 설명하기 위한 도면이다.
도 26은 도 21을 참조하여 이해될 수 있는 워터마크 데이터 추출 방법에 있어서, 선정된 이미지 블록에 대하여 제2 유사도를 판정하고 기준점을 획득하는 동작을 자세히 설명하기 위한 상세 순서도이다.
도 27은 도 21을 참조하여 이해될 수 있는 워터마크 데이터 추출 방법의 데이터 추출 관련 동작을 자세히 설명하기 위한 상세 순서도이다.
도 28은 본 발명의 또 다른 실시예에 따른 워터마크 데이터 임베딩 장치의 블록 구성도이다.
도 29는 본 발명의 또 다른 실시예에 따른 워터마크 데이터 추출 장치의 블록 구성도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명의 기술적 사상은 이하의 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 발명의 기술적 사상을 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 기술적 사상은 청구항의 범주에 의해 정의될 뿐이다.
각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 및/또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결" 또는 "결합"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결" 또는 "결합"될 수도 있다고 이해되어야 할 것이다.
본 발명에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
이하, 본 발명의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.
개요
도 1은 본 발명의 일 실시예에 따른 워터마크 데이터(10)의 임베딩 방법 및 본 발명의 다른 실시예에 따른 워터마크 데이터(10)의 추출 방법이 활용되는 상황을 설명하기 위한 개념도이다. 먼저, 오리지널 이미지(20)에 워터마크 데이터(10)가 임베딩(Embedding) 된 결과 만들어진 결과 이미지(30)가 다양한 채널을 통하여 배포될 수 있다. 결과 이미지(30)는, 예를 들어 명함이거나, 상품 표면에 부착되는 라벨일 수 있다. 또한, 결과 이미지(30)는 박스 등의 운송 수단 외면에 프린트 될 수도 있다.
도 1에 도시된 바와 같이, 결과 이미지(30)를 보고는 워터마크 데이터(10)의 임베딩 여부를 육안으로 인식하기 어렵다. 본 실시예에 따른 워터마크 데이터 임베딩 방법은 종래의 바코드, QR 코드 등의 기술과 달리 워터마크 데이터(10)의 임베딩 여부를 육안으로 인식하기 어렵기 때문에, 오리지널 이미지(20)를 훼손하지 않고도 워터마크 데이터(10)를 담을 수 있는 장점이 있다. 또한, 일 실시예에 따른 워터마크 데이터(10)의 사이즈가 144bit이고, 그 중 실제 활용 가능한 바디 데이터는 54bit이며, 그 결과 상기 워터마크 데이터를 이용하여 254의 경우의 수를 표현할 수 있다. 따라서, 상품 표면에 부착되는 라벨에 본 기술을 적용하면, 육안으로 보기에는 동일 라벨로 보이더라도, 모든 상품 마다 고유의 ID를 부여하여 그 ID를 워터마크 데이터로 상기 라벨에 임베딩 하는 것도 가능하다. 나아가 기존의 248보다 활용 가능한 데이터가 증가하여 더 많은 가변 데이터 생성이 가능하다.
결과 이미지(30)를 보고는 워터마크 데이터의 임베딩 여부를 육안으로 인식하기 어렵지만, 본 발명의 몇몇 실시예들에 따른 워터마크 데이터 추출 방법을 실행하는 사용자 단말(900)을 이용하면 결과 이미지(30)에서 워터마크 데이터(10)를 추출할 수 있다. 예를 들어, 사용자 단말(900)에 구비된 카메라를 이용하여 결과 이미지(30)를 촬영하고, 촬영된 결과에 대하여 워터마크 데이터 추출 로직을 실행함으로써, 워터마크 데이터(10)를 추출할 수 있다.
본 발명의 몇몇 실시예들에서 임베딩 될 수 있는 워터마크 데이터(10)는 예를 들어, 표 1의 포맷(format)을 가질 수 있다.
4 bit | 3 bit | 8 bit | 54 bit | 7 bit | 68 bit | |
컨트롤 파라미터 | 바디 데이터 | CRC8 | 바디 데이터 에러 수정 비트 | |||
버전 코드 | CRC4 | 컨트롤 파라미터 에러 수정 비트 |
워터마크 데이터(10)는 15 bit의 컨트롤 파라미터(Control Parameter), 54 bit의 바디 데이터(Body Data), 7 bit의 검증 코드(CRC 8) 및 68bit의 에러 정정 코드(Error Correction Bit)를 포함할 수 있다. 표 1의 컨트롤 파라미터(control parameter)는 바디 데이터의 타입을 가리킬 수 있다. 예를 들어, 사용자 단말(900)이 워터마크 데이터(10)를 추출하여 그 중 54 bit의 바디 데이터를 인식하고, 상기 바디 데이터 및 컨트롤 파라미터를 수납한 컨텐츠 요청을 컨텐츠 서버에 송신할 수 있다. 컨텐츠 서버는 고유 ID를 부여받은 각각의 컨텐츠를 타입 별로 관리하는 컨텐츠 DB를 저장할 수 있다. 상기 컨텐츠 서버는 상기 바디 데이터에 매칭 되는 ID의 컨텐츠 중 상기 컨트롤 파라미터에 대응되는 타입의 컨텐츠를 사용자 단말(900)에 제공할 수 있을 것이다.일 실시예에서, 컨트롤 파라미터는 4 bit의 버전 코드(Version Code), 3 bit의 해당 영역에 대한 검증코드(CRC4) 및 8 bit의 에러 정정 코드를 포함할 수도 있다. 상기 버전 코드에 의해서 워터마크 데이터(10)를 24개의 버전으로 분리하여 관리함으로써, 버전을 업데이트 하여 관리하거나 동시에 여러 버전을 운영할 수 있다.
68 bit의 에러 수정 비트(Error Correction Bit)는 워터마크 데이터(10)가 잘못 추출될 수 있는 가능성을 보완하기 위한 에러 수정용 코드를 포함할 수 있다. 예를 들어, 상기 에러 수정용 코드는 BCH(Bose-Chaudhuri-Hocquenghem) 코드 일 수 있다.
도 2는 본 발명의 몇몇 실시예들에 따른 워터마크 데이터의 임베딩 방법에 따라 워터마크 데이터가 임베딩된 이미지와 오리지널 이미지의 비교를 위한 도면이다. 도 2에 도시된 바와 같이, 결과 이미지(30)는 오리지널 이미지(20)와 육안상으로는 크게 다른 점이 없다. 그러나, 모노크롬으로 변환된 결과 이미지(30a)에는 오리지널 이미지의 모노크롬 버전(20a)과 비교하여 노이즈가 도드라진다. 이는, 본 발명의 일 실시예에 따른 워터마크 데이터가 노이즈의 형태로 오리지널 이미지에 임베딩 되기 때문이다. 이와 관련하여, 몇몇 도면들을 참조하여 보다 자세히 설명한다.
워터마크 데이터의 임베딩
이하, 도 3을 참조하여 본 발명의 일 실시예에 따른 워터마크 데이터의 임베딩 방법을 전체적으로 설명한다. 본 실시예에 따른 워터마크 데이터의 임베딩 방법은, 예를 들어 컴퓨팅 장치에 의하여 실행될 수 있다.
상기 컴퓨팅 장치가 워터마크 데이터를 로드(load)하고(S100), 노이즈 베이스 이미지를 로드(S120)한다. 또한 워터마크 데이터를 담을 오리지널 이미지도 로드(S160)한다. 노이즈 베이스(noise base)는 워터마크 데이터를 담을 일종의 데이터 그릇으로 이해될 수 있다. 노이즈 베이스는 이미지 파일로부터 로드 될 수도 있고, 주파수 도메인(frequency domain)의 2차원 매트릭스를 가리키는 데이터의 형태로 로드 될 수도 있다. 또한 일 실시예에서, 주파수 도메인의 매그니튜드 스펙트럼 및 위상 스펙트럼의 형태로 로드 될 수도 있다.
저장된 워터마크 데이터 및 저장된 난수열을 이용하여 결정되는 패턴에 따라 상기 노이즈 베이스 이미지가 변환되고(S140), 변환된 노이즈 베이스 이미지를 이용하여 오리지널 이미지를 조정함으로써, 워터마크 데이터가 임베드 된 이미지가 생성되고 출력된다(S180, S200). 예를 들어, 상기 워터마크 데이터가 임베드 된 이미지는 이미지 파일의 형태로 출력 되거나, 프린팅 장치에 의하여 종이 등 프린팅 대상에 프린트 될 수 있다. 일 실시예에 따르면, 3D 프린터에 의하여 프린팅 결과물의 외면에 도색되는 형태로 상기 출력이 이뤄질 수도 있다.
도 3을 참조하여 설명된 바와 같이, 본 실시예에서는 노이즈 베이스가 핵심적인 역할을 수행한다. 주파수 영역을 통해 생성된 노이즈 베이스 이미지는 주파수의 특징에 따라 이미지가 일부 손상되더라도 동기화 신호(Synchronization Signal)의 특성이 유지되어, 워터마크 데이터의 추출 성공률을 높일 수 있도록 구성된다. 또한, 노이즈 베이스 이미지 원본이 블록화 된 후, 워터마크 데이터에 의해 변환이 수행되므로 결과 이미지에 대한 분석을 통하여 쉽게 노이즈 베이스 이미지 원본이 유출되지 않는다.
종래 워터마크 기술은 한가지 방법의 규칙으로 데이터를 임베딩 함으로써, 동기화 신호를 훼손시켜 추출 시 인식율이 저하되는 문제가 발생하였다. 나아가, 한가지 방법의 규칙으로 데이터를 임베딩 하여 일정한 패턴이 형성됨으로써, 데이터가 임베딩 되는 노이즈 베이스 이미지의 유출에 의한 보안의 우려가 발생하였다. 이하 도 4 내지 도 16을 참조하여, 상기 문제를 해결하기 위한 워터마크 데이터의 임베딩 방법을 보다 구체적으로 설명하겠다.
도 4는 도 3에 도시된 노이즈 베이스 이미지 변환 단계(S140)를 보다 구체화한 순서도이다.
M x M 픽셀의 블록 단위로 노이즈 베이스 이미지를 구획화(S141)한다. 한 블록은 수평과 수직 방향으로 짝수의 픽셀로 구성된 사각형 모양으로 형성되는 것이 바람직하다. 예를 들어, 한 블록은 2 x 2 픽셀 사이즈일 수 있다. 2 x 2 픽셀의 블록은 구성될 수 있는 최소 사이즈의 블록인바, 한 블록을 2 x 2 사이즈로 구성함으로써, 다양한 크기의 이미지에 대응할 수 있는 효과를 얻는다. 다만, 이에 한정되는 것은 아니고 한 블록은 수평과 수직 방향으로 짝수의 픽셀로 구성된 정사각형 모양으로 형성될 수 있다.
몇몇 실시예들에서, 블록의 사이즈는 임베딩 설정에 따라 조정될 수 있다. 블록의 사이즈가 커지는 경우, 임베딩 소요시간이 감축되는 효과가 있다. 블록의 사이즈가 작아지는 경우, 작은 픽셀에 더 많은 데이터를 임베딩 할 수 있는 효과가 있다.
다음으로, 각 블록마다, 블록에 속한 픽셀 값의 평균을 산출하여, 그 평균 값이 기준치(예를 들어, 흰색을 가리키는 픽셀 값과 검은색을 가리키는 픽셀 값의 준간 값) 이상인 경우 해당 블록의 모든 색상을 제1 색상(예를 들어, 검은색)으로 단일화(S143)한다. 그 평균값이 기준치 미만인 경우 해당 블록의 모든 색상을 제2 색상(예를 들어, 흰색)으로 단일화(S143)한다.
도 5는 도 4를 참조하여 설명된 노이즈 베이스 이미지(40)의 구획화 및 단일화의 결과로 블록화 된 노이즈 베이스 이미지(41)를 도시한다. 블록화 된 노이즈 베이스 이미지(41)를 픽셀 단위로 확대한 그림을 참조하면, 2 x 2 픽셀 사이즈의 정사각형 단위 블록마다 모두 동일한 픽셀 값으로 단일화된다. 현재 블록(41a)는 픽셀 값이 0으로 할당되어 흰색에 해당한다.
도 4 및 도 5를 참조하여 설명된 블록화는 노이즈 베이스 이미지에 워터마크 데이터만을 삽입함으로써 발생하는 반복되는 패턴의 형성을 방지하고, 오로지 1개의 픽셀 단위로 워터마크 데이터를 삽입하여 발생하는 추출 시 인식률 저하를 방지할 수 있다. 나아가, 블록화를 진행함으로써, 원본 노이즈 베이스 이미지가 갖고 있는 주파수 특성에 해당하는 동기화 신호를 유지할 수 있다.
다시 도 4를 참조하면, 워터마크 데이터를 반영하여 블록의 일부 픽셀 값을 저장된 난수열에 의해 결정되는 패턴에 따라 수정함으로써 블록화 된 노이즈 베이스 이미지(41)를 변환(S145)한다. 후술될 몇몇 실시예에 의해서 블록화 된 노이즈 베이스 이미지(41)의 변환은 구체화된다.
도 6은 도 4에서 설명된 노이즈 베이스 이미지(41)의 변환(S145)을 구체적으로 설명하기 위한 순서도이다. 본 실시예에 따른 워터마크 데이터의 임베딩 방법은, 예를 들어 컴퓨팅 장치에 의하여 실행될 수 있다.
컴퓨팅 장치는 노이즈 베이스 이미지를 변환하기 위해, 미리 저장된 난수열을 로드(S1451) 한다. 미리 저장된 난수열은 반복하여 발생한 난수를 발생 순서에 따라 저장한 것일 수 있다. 다만, 이에 한정되는 것은 아니다. 일 실시예에서, 144 bit의 워터마크 데이터를 임베딩 하기 위해 필요한 난수열의 난수 개수는 144개이다. 예를 들어, 난수는 1에서 6까지의 자연수 중 선택된 어느 하나의 수에 해당할 수 있다.
앞서 설명한 예시에서, 하나의 블록을 2 x 2 픽셀로 구획하였으므로, 1bit을 표현하기 위해 4개의 픽셀 중 2개의 픽셀을 선택하는 총 6가지의 규칙을 할당하여야 한다. 다만, 이에 한정되는 것은 아니고 블록의 스케일에 따라 난수의 경우의 수는 변경될 수 있다.
한편, 워터마크 데이터 임베딩 및 추출 과정에서 둘 이상의 난수열(random number sequence) 세트들 중 어느 하나가 선택적으로 사용될 수 있다. 복수의 난수열 세트들은 워터마크 데이터를 임베딩하는 장치와 워터마크 데이터를 추출하는 장치 사이에 사전에 공유된다.
다른 실시예에서, 발생한 난수는 발생한 순서에 따라 난수열로 저장될 수 있다. 임베딩 시 난수열로 저장되어, 추출 시 저장된 난수열이 이용되어 대응되는 규칙에 의해 추출을 수행할 수 있다. 다른 실시예에서, 난수열은 암호화된 형태로 저장될 수 있다. 암호화된 형태로 저장됨에 따라, 유출에 의한 보안의 우려를 저하시킬 수 있다.
일 실시예에서, 저장된 난수열의 난수가 기준 횟수 이상 연속적으로 채택되는 경우, 채택된 수를 제외한 다른 수로 치환되는 단계가 포함될 수 있다. 하나의 규칙이 아닌 복수의 규칙이 적용되어 워터마크 데이터를 임베딩함으로써 동기화 신호를 유지할 수 있고, 보안성을 강화할 수 있는 바, 기준 횟수 이상 연속된 블록에 적용시킬 규칙이 반복되는 경우 이를 방지하기 위해 연속적으로 채택된 수를 제외한 다른 수로 치환되는 단계를 포함할 수 있다.
다음으로, 로드 된 워터마크 데이터 및 채택된 난수를 이용하여 난수에 대응되는 규칙으로 블록의 픽셀 값이 수정(S1453)된다. 도 8을 참조하면, 앞서 예시된 2 x 2 픽셀의 경우 총 6가지 규칙이 미리 설정된 난수에 대응된다.
이하 도 7을 참조하여, 도 8에서 설명된 난수에 대응되는 규칙으로 블록의 픽셀 값이 수정되는 단계(S1453)를 보다 구체적으로 설명한다. 본 실시예에 따른 워터마크 데이터의 임베딩 방법은, 예를 들어 컴퓨팅 장치에 의하여 실행될 수 있다.
현재 블록이 흰색인 경우(S1453-1), n번째 난수에 대응되는 규칙이 로드(S1453-2)된다. 도 8을 참조하면, 2 x 2 픽셀의 경우 6가지 경우의 수에 대응되는 규칙을 확인할 수 있다. 다음으로, 현재 블록의 일부 픽셀이 대응되는 규칙과 일치하도록 검은색으로 변환(S1453-3)된다.
현재 블록이 검은색인 경우(S1453-1), n번째 난수에 대응되는 규칙이 로드(S1453-5)된다. 도 8을 참조하면, 2 x 2 픽셀의 경우 6가지 경우의 수에 대응되는 규칙을 확인할 수 있다. 다만, 해당 규칙은 현재 블록이 흰색인 경우를 기준으로 도시되었으므로, 검은색과 흰색이 반전된 규칙이 현재 블록이 검은색인 경우의 규칙에 해당한다. 다음으로, 현재 블록의 일부 픽셀이 대응되는 규칙과 일치하도록 흰색으로 변환(S1453-6)된다.
다음으로, 모든 워터마크 데이터의 처리가 완료(S1453-7)되지 않은 경우, 각각의 블록을 순회(S1453-4)하면서 상기 워터마크 데이터 및 난수를 이용하여 동일한 과정을 반복한다.
도 9는 앞서 설명한 각각의 블록을 순회(S1453-4)하면서 워터마크 데이터를 임베딩 하는 과정을 도시한다. 144 bit의 워터마크 데이터를 임베딩 하기 위해 144개의 블록이 구성되고, 최소 576개의 픽셀이 요구된다. 후술할 몇몇 실시예에서 노이즈 베이스 이미지는 정사각형이 아닌 직사각형으로 구성될 수 있다.
이하 도 10 내지 14를 참조하여, 도 7에서 설명된 임베딩 방법의 구체적 예시를 설명한다. 이하 설명의 편의를 위해, 블록은 2 x 2 픽셀에 해당하고, 채택되는 난수는 1에서 6에 해당하는 자연수 중 어느 한수에 해당하는 것으로 한다.
도 10을 참조하면, 첫번째 워터마크 데이터는 0이고, 채택된 난수는 1에 해당한다. 변환 대상 블록(43a)는 흰색으로 블록화 되었으므로, 도 8을 참조하여 난수에 대응되는 케이스 1의 0에 따라 변환 대상 블록(43a)의 픽셀 값이 수정된다.
도 11을 참조하면, 두번째 워터마크 데이터는 1이고, 채택된 난수는 3에 해당한다. 변환 대상 블록(43b)는 검은색으로 블록화 되었으므로, 도 8을 참조하여 난수에 대응되는 케이스 3의 1이 반전된 형태에 따라 변환 대상 블록(43b)의 픽셀 값이 수정된다.
도 12를 참조하면, 세번째 워터마크 데이터는 1이고, 채택된 난수는 4에 해당한다. 변환 대상 블록(43c)는 흰색으로 블록화 되었으므로, 도 8을 참조하여 난수에 대응되는 케이스 4의 1에 따라 변환 대상 블록(43c)의 픽셀 값이 수정된다.
도 13을 참조하면, 네번째 워터마크 데이터는 0이고, 채택된 난수는 5에 해당한다. 변환 대상 블록(43d)는 검은색으로 블록화 되었으므로, 도 8을 참조하여 난수에 대응되는 케이스 5의 0이 반전된 형태에 따라 변환 대상 블록(43d)의 픽셀 값이 수정된다.
도 7 내지 도 13을 참조하여, 난수와 난수에 대응되는 규칙을 이용하여 블록화 된 노이즈 베이스 이미지(41)상에 워터마크 데이터를 임베딩 하는 구체적 방법을 설명했다. 하나의 규칙으로 임베딩 하는 종전의 워터마크 기술과 달리, 본 발명에 따른 일 실시예는 동기화 신호를 훼손시키지 않아 추출 시 인식율을 향상시킬 수 있다. 나아가, 한가지 방법의 규칙으로 데이터를 임베딩 하여 일정한 패턴이 형성됨으로써, 데이터가 임베딩 되는 노이즈 베이스 이미지의 유출에 의한 보안의 우려도 사라질 수 있다.
이하 도 6 내지 도 13을 참조하여 구체적으로 설명된 본 발명의 일 실시예에 따른 워터마크 데이터의 임베딩 방법을 도 14에 도시된 개념도로 설명한다. 일 실시예에서, 블록화 된 노이즈 베이스 이미지(41)에 워터마크 데이터(10)를 임베딩 함에 있어서, 미리 저장된 난수열을 이용하고, 블록마다 순회하면서 채택된 난수에 대응되는 규칙으로 블록의 일부 픽셀 값을 수정하여 변환된 노이즈 베이스 이미지(50)를 얻는다.
몇몇 실시예에서 참조될 수 있는 변환된 노이즈 베이스 이미지(50)는 한가지 규칙으로 변환된 종래의 노이즈 베이스 이미지보다 동기화 신호 특성이 더 잘 유지되고, 일정한 패턴이 형성되지 않으므로 보안성이 강화된다.
이하 도 15 및 16을 참조하여, 몇몇 실시예에서 참조될 수 있는 동기화 신호에 대해 설명한다. 주파수 영역을 통해 생성된 노이즈 베이스 이미지는 주파수의 특징에 따라 이미지가 일부 손상되더라도 동기화 신호 특성이 유지된다. 따라서 추출 과정에서 동기화 신호와 촬영된 이미지의 유사성을 이용해 기하학적 왜곡을 보정할 수 있다.
도 15에 도시된 바와 같이, 노이즈 베이스 이미지(40)를 푸리에 변환하는 경우, 주파수 도메인에서의 크기 스펙트럼(45) 및 위상 스펙트럼(47)을 얻을 수 있다. 예시된 노이즈 베이스 이미지(45)는 동기화 신호(45a, 45b, 45c, 45d)에 의해서 생성된 이미지에 해당한다. 도 16에 도시된 바와 같이, 변환된 노이즈 베이스 이미지(50)의 푸리에 변환에 따른 주파수 도메인에서의 크기 스펙트럼(51a)에서 동기화 신호(51aa, 51ab, 51ac, 51ad)가 유지된다. 앞서 설명한 바와 같이, 블록화 및 워터마크 데이터의 임베딩 단계를 거쳤음에도 동기화 신호가 유지되어 추출 단계에서 데이터를 담는 그릇에 해당하는 노이즈 베이스 이미지를 인식할 수 있다.
다시, 도 3으로 돌아가서 설명하면, 변환된 노이즈 베이스 이미지를 이용하여 오리지널 이미지를 조정함으로써, 워터마크 데이터가 임베드 된 이미지를 생성한다(S180). 상기 조정은, 상기 오리지널 이미지의 제1 픽셀의 R 채널값, G채널값 및 B채널값이 모두 한계치를 초과하거나 모두 한계치에 미달하는 경우에 한하여, 상기 제1 픽셀을 조정하는 것을 포함한다. 이 때, 상기 오리지널 이미지의 상기 현재 픽셀을 조정하는 것은 상기 변환된 노이즈 베이스 이미지의 제2 픽셀이 흰색인 경우 상기 제1 픽셀을 제1 조정하고, 상기 제2 픽셀이 검은색인 경우 상기 제1 픽셀을 상기 제1 조정과 상이한 규칙으로 제2 조정하는 단계를 포함한다. 예를 들어, 상기 제1 조정은 상기 제1 픽셀의 R채널값을 감소시키고, G채널값을 증가시키며, B채널값을 감소시키는 것이고, 상기 제2 조정은 상기 제1 픽셀의 R채널값을 증가시키고, G채널값을 감소시키며, B채널값을 증가시키는 것이다.
상기 조정에 있어서, α, β, γ 세 가지 상수의 값이 활용된다. 상기 세 가지 상수의 값은, 워터마크 데이터 추출 프로세스에서, 이미지의 노이즈를 극대화하기 위하여 모노크롬화 할 때 사용될 비율이다.
(R, G, B = 갱신되기 전 원본 R 채널, G 채널, B 채널 각각의 픽셀 값, R, G, B'= 갱신 후의 R 채널, G 채널, B 채널 각각의 픽셀 값)을 전제하여, 아래의 조정 규칙을 고려할 수 있다.
제1 경우: 노이즈의 픽셀 값이 0이고 원본 이미지의 픽셀 값이 R, G, B 세 채널 모두 250보다 클 때, R' = R(1 - α), G'= G(1 + β), B'= B(1 - γ)
제2 경우: 노이즈의 픽셀 값이 0이고 원본 이미지의 픽셀 값이 R, G, B 세 채널 모두 250보다 작을 때, R' = R(1 - α), G'= G(1 + β), B'= B(1 - γ)
제3 경우: 노이즈의 픽셀 값이 255이고 원본 이미지의 픽셀 값이 R, G, B 세 채널 모두 250보다 클 때, R' = R(1 + α), G'= G(1 - β), B'= B(1 + γ)
제4 경우: 노이즈의 픽셀 값이 255이고 원본 이미지의 픽셀 값이 R, G, B 세 채널 모두 250보다 작을 때, R' = R(1 + α), G'= G(1 - β), B'= B(1 + γ)
노이즈를 원본 이미지에 삽입하는 데에 사용된 α, β, γ 세 가지의 상수는 원본 이미지에 따라 달라진다. 본 기술은 사람의 육안으로 식별하기 힘들다는 특성을 가지고 있다. 이를 충족시키기 위해 노이즈가 삽입될 원본 이미지의 픽셀 값에 따라 α, β, γ값은 다양하게 달라져야 한다.
이하 도 17 내지 도 20을 참조하여 본 발명의 일 실시예에 따른 워터마크 데이터 임베딩 방법 중 노이즈 베이스 이미지가 정사각형이 아닌 직사각형에 해당하는 구체적 예시들을 설명한다.
이하 도 17 및 18을 참조하여, 오리지널 이미지의 종횡비를 기준으로 워터마크 데이터를 임베딩 하는 방법을 설명한다.
일 실시예에서, 오리지널 이미지의 종횡비를 얻는 단계가 더 포함될 수 있고, 오리지널 이미지의 종횡비가 기준 범위에 해당하는 경우 오리지널 이미지의 종횡비에 대응하여 정사각형이 아닌 직사각형 이미지의 노이즈 베이스 이미지를 이용해 워터마크 데이터가 임베딩 될 수 있다. 오리지널 이미지의 디자인 특성에 대응하여 유연하게 워터마크를 수정하여 임베딩 할 수 있다. 오리지널 이미지의 디자인 특성을 반영하므로, 워터마크 데이터 추출 시 인식 성능을 향상시킬 수 있다. 예를 들어, 종횡비(=가로/세로)가 4이상이거나 0.25이하인 경우 직사각형 이미지의 노이즈 베이스 이미지를 이용해 워터마크 데이터를 임베딩 할 수 있다.
일 실시예에서, 오리지널 이미지의 종횡비가 기준 범위에 해당하는 경우 종횡비가 고정된 형태의 직사각형의 노이즈 베이스 이미지를 이용해 워터마크 데이터가 임베딩 될 수 있다.
일 실시예에서 오리지널 이미지의 종횡비가 기준 범위에 해당하는 경우 종횡비가 오리지널 이미지의 종횡비와 동일한 형태의 직사각형의 노이즈 베이스 이미지를 이용해 워터마크 데이터가 임베딩 될 수 있다. 예를 들어, 도 9를 참조하면 기존의 정사각형 워터마크는 12 x 12 블록으로 이루어져, 24 x 24 픽셀 단위로 구성되었다면, 상기 종횡비 4에 대응한 단위 워터마크는 48 x 12 픽셀로 구성될 수 있다. 상기 종횡비 0.25에 대응한 단위 워터마크는 12 x 48 픽셀로 구성될 수 있다.
도 17은 앞서 설명한 직사각형의 워터마크가 도시된다. 24 x 24 픽셀의 정사각형 단위 워터마크(60)에 의해 정사각형 워터마크(70)가 생성된다. 48 x 12 픽셀의 가로가 세로보다 긴 직사각형 단위 워터마크(60a)에 의해 가로가 세로보다 긴 직사각형 워터마크(70a)가 생성된다. 12 x 48 픽셀의 세로가 가로보다 긴 직사각형 단위 워터마크(60b)에 의해 세로가 가로보다 긴 직사각형 워터마크(70b)가 생성된다. 앞서 설명한바, 오리지널 이미지의 디자인 특성을 반영하여 워터마크를 생성하므로, 워터마크 데이터 추출 시 인식 성능을 향상시킬 수 있다.
도 18은 앞서 설명된 직사각형의 워터마크가 활용될 구체적 예시를 나타낸 예시도에 해당한다. 워터마크는 인간의 눈에 인식되지 않으므로, 가운데(60c) 회사의 CI나 QR 코드 등을 위치하여 함께 사용될 수 있다. 특히 QR 코드와 함께 사용되는 경우, 향후 QR코드를 이용한 상거래의 보안을 강화하기 위한 용도로 사용될 수 있다. 가로가 세로보다 긴 직사각형 단위 워터마크(60a)는 상하단에 위치할 수 있고, 세로가 가로보다 긴 직사각형 단위 워터마크(60b)는 좌우단에 위치하여 인간의 눈에 인식되지 않는 워터마크로 구성될 수 있다.
이하 도 19 및 20을 참조하여, 오리지널 이미지의 무늬 경향성을 기준으로 워터마크 데이터를 임베딩 하는 방법을 설명한다.
일 실시예에서, 오리지널 이미지의 무늬 가로 세로 경향성을 수치로 얻는 단계가 더 포함될 수 있고, 상기 수치가 기준치 이하에 해당하는 경우 수치에 대응되는 형태의 직사각형 노이즈 베이스 이미지를 이용하여 워터마크 데이터가 임베딩 될 수 있다.
일 실시예에서, 무늬 가로 세로 경향성을 수치로 얻는 단계는 오리지널 이미지의 푸리에 변환 주파수 도메인의 크기 스펙트럼에서 피크 좌표가 가장 인접한 축과의 최소거리를 얻는 단계를 포함할 수 있다. 도 19를 참조하면, 세로 무늬가 연속된 오리지널 이미지(53)의 푸리에 변환 결과 x 축 상에 피크점이 도시된 크기 스펙트럼(53a)을 얻을 수 있다. 가로 무늬가 연속된 오리지널 이미지(55)의 푸리에 변환 결과 y 축 상에 피크점이 도시된 크기 스펙트럼(55a)을 얻을 수 있다. 본 예시의 경우, 축 상에 위치한 피크점에 해당하므로 인접한 축과의 최소거리는 0에 해당한다.
일 실시예에서, 피크 좌표와 인접한 축과의 최소거리가 기준치 이하에 해당하는 경우, 인접한 상기 축이 x축에 해당하는 경우 직사각형의 세로가 가로보다 더 긴 노이즈 베이스 이미지를 이용하여 워터마크 데이터가 임베딩 될 수 있다. 일 실시예에서, 피크 좌표와 인접한 축과의 최소거리가 기준치 이하에 해당하는 경우, 인접한 상기 축이 y축에 해당하는 경우 직사각형의 가로가 세로보다 더 긴 노이즈 베이스 이미지를 이용하여 워터마크 데이터가 임베딩 될 수 있다. 도 19를 참조하면, 53a의 결과 오리지널 이미지(53)에 세로가 가로보다 더 긴 워터마크가 임베딩 될 수 있다. 55a의 결과 오리지널 이미지(55)에 가로가 세로보다 더 긴 워터마크가 임베딩 될 수 있다. 오리지널 이미지의 무늬 경향성에 대응하여 단위 워터마크의 크기를 조절함으로써, 동기화 신호를 강하게 유지하여 추출 시 인식률이 향상되는 효과가 있다.
도 20은 앞서 설명한 오리지널 이미지의 무늬에 대응하여 워터마크를 배치하는 구체적인 예시가 도시된다. 가로가 세로보다 더 긴 단위 워터마크(60a)가 가로 무늬 오리지널 이미지(20b)에 배치된다. 세로가 가로보다 더 긴 단위 워터마크(60b)가 세로 무늬 오리지널 이미지(20c)에 배치된다. 앞서 설명한 바와 같이, 오리지널 이미지의 무늬 경향성에 대응하여 단위 워터마크의 크기를 조절함으로써, 동기화 신호를 강하게 유지하여 추출 시 인식률이 향상되고, 인식 속도가 감소되는 효과가 있다.
워터마크 데이터의 추출
이하, 본 발명의 다른 실시예에 다른 워터마크 데이터의 추출 방법에 대하여 도 21 내지 도 27을 참조하여 설명한다. 본 실시예에 따른 워터마크 데이터의 추출 방법은 상기 설명된 본 발명의 일 실시예에 따른 워터마크 데이터의 임베드 방법에 의하여 임베드 된 워터마크 데이터에 대하여만 적용 가능하다. 먼저, 도 21을 참조하여 설명한다.
본 실시예에 따른 워터마크 데이터의 추출 방법은 촬영 이미지를 제공받고, 이로부터 복수의 이미지 블록들을 식별하는 것에 의하여 시작된다(S200).
만약 현존하는 디지털 워터마킹 기술과 같이 워터마크가 삽입된 디지털 이미지 파일 그대로를 가지고 PC상에서 워터마크를 추출한다면 임베드 과정을 정확히 역으로 수행하면 워터마크를 추출할 수 있다. 하지만, 본 발명의 기술은 스마트폰 카메라 등 이동 단말의 카메라를 이용하여 워터마크를 인식하는 것을 지원하므로, 워터마크를 추출하기 전 많은 이미지 전처리 과정이 필요하다. 도 22를 참조하면, 스마트 폰(900)의 사용자는 워터마킹 데이터를 추출하기 위한 특별한 주의를 기울이지 않고 워터마킹 데이터가 임베드 된 이미지가 프린트 된 매체(30')를 촬영할 수 있다. 본 실시예에 따른 워터마크 데이터 추출 방법은 이러한 경우에도 워터마크 데이터의 추출이 가능하도록 개발되었다.
전처리 과정은 카메라에 찍힌 사진 내에 워터마크 존재여부를 판단할 물체의 위치, 크기, 회전여부, 밝기, 파손여부 등 많은 변수 속에서도 높은 인식률 유지가 가능하게 만든다. 이 과정에서 임베드 과정에서 삽입한 동기화 신호를 이용해 워터마크의 존재 여부를 가려내고 데이터를 추출하기 최적의 조건으로 이미지를 변형한다.
상기 전처리 과정을 본격적으로 수행하기 전에, 사전 보정이 수행될 수 있다. 예를 들어, 워터마크의 존재여부를 판별할 물체를 스마트폰 카메라를 이용해 비추었을 때 스마트폰 화면에 들어오는 프리뷰를 1920x1080 크기로 캡쳐 한다. 이 후, 캡쳐한 이미지의 모든 픽셀 값들을 RGB형태로 변경한다. 본 발명의 실시예들은 RGB를 기반으로 작업을 수행하기 때문이다.
다음으로 캡쳐된 1920x1080 이미지(이하, "촬영 이미지"라고 지칭한다)가 복수의 이미지 블록들로 구획된다. 여기서 복수의 이미지 블록들 각각은 후술할 단계(S210)에서 제1 유사도 판정의 처리 대상이 되는 이미지 단위이며, 상기 제1 유사도 판정 결과 선정된 어느 하나의 이미지 블록을 대상으로 워터마크 데이터의 존재여부가 판별되고 워터마크 데이터 추출이 시도된다.
도 23a는, 촬영 이미지(90)가 동일한 크기를 가지는 총 9개의 이미지 블록들(91 내지 99)로 구획된 예를 보여주는 도면이다. 촬영 이미지가 1920x1080의 크기를 가지는 이미지(90)라면, 상기 이미지 블록들(91 내지 99)은 예컨대 각각 256x256 픽셀 또는 512x512 픽셀의 크기를 가지는, 상기 촬영 이미지의 일부분일 수 있다. 상기 각각의 이미지 블록들의 크기는, 후술할 단계들(S210 내지 S250)에서 워터마크 존재여부 판별 및 워터마크 데이터 추출이 원활하게 수행될 수 있도록 하는 임의의 크기로 설정될 수 있으나, 적어도 워터마크 임베딩에 사용되는 노이즈 베이스 이미지의 크기 이상으로 설정되어야 한다. 이때 노이즈 베이스 이미지의 크기는 임베딩 될 워터마크 데이터의 크기(비트수)를 고려하여 적절한 크기로 선택되는 것이다.
이때 복수의 이미지 블록들(91 내지 99)은 서로 부분적으로 중첩될 수 있다. 도 23a에 도시된 예에서 이미지 블록들(1, 2, 3)은 각각 이미지 블록들(4, 5, 6)과 중첩되는 영역(짙은 음영으로 표시된 영역)을 가지며, 이미지 블록들(7, 8, 9)은 각각 이미지 블록들(4, 5, 6)과 중첩되는 영역(짙은 음영으로 표시된 영역)을 가진다.
후술할 제1 유사도 판정 단계(S210)는 촬영 이미지(90) 내의 어느 영역에 워터마크 데이터가 존재하는지 알려지지 않은 상태에서, 워터마크 데이터가 존재할 가능성이 가장 높은 이미지 블록을 찾아내는 과정이다. 따라서 촬영 이미지(90) 내에 가급적 많은 이미지 블록들을 서로 중첩하여 설정할수록, 촬영 이미지(90) 내에 존재하는 워터마크를 인식해 내지 못할 가능성은 낮아진다. 다만, 이미지 블록들의 수가 많아질수록 각각의 이미지 블록들에 대해 수행되는 제1 유사도 판정에 소모되는 컴퓨팅 파워와 시간이 증가하게 된다. 반대로 촬영 이미지(90) 내에 더 적은 이미지 블록들을 설정할수록, 후술할 단계(S210)에서 소모되는 컴퓨팅 파워와 시간은 절감되지만, 촬영 이미지(90) 내에 존재하는 워터마크를 인식하지 못할 가능성은 증가하게 된다. 촬영 이미지(90) 내에 워터마크가 존재함에도 불구하고 인식하지 못하는 경우에는, 결국 새로운 촬영 이미지를 대상으로 워터마크 인식 과정을 다시 수행해야 하므로, 최종적으로 소모되는 컴퓨팅 파워와 지연 시간은 더 증가할 수 있다.
한편, 촬영 이미지(90)의 모든 영역이 복수의 이미지 블록들(91 내지 99) 중 적어도 하나에 의해 커버되는 것이 바람직하지만, 반드시 그러한 것은 아니다. 사용자가 카메라로 물체를 비출 때 물체가 화면의 정중앙에 오도록 비출 가능성이 매우 높기 때문에, 촬영 이미지(90)의 외곽 영역 중 일부 영역은 전술한 복수의 이미지 블록들(91 내지 99)에 의해 커버되지 않더라도 워터마크 인식 결과에 미치는 영향이 상대적으로 낮을 수 있다.
한편, 몇몇 실시예에서는, 앞서 촬영 이미지(90)로부터 식별된 복수의 이미지 블록들(91 내지 99)에 각각 대하여 Deblur 처리를 수행함으로써, 후술할 단계(S210) 내지 단계(S250)에서 사용될 이미지 블록들을 선명하게 만들어 줄 수 있다.
도 23a에는 촬영 이미지(90)로부터 총 9개의 이미지 블록들(91 내지 99)을 식별하는 예를 설명하였으나, 본 발명이 그러한 실시예로 한정되는 것은 아니다. 본 발명이 사용될 목적과 워터마크 데이터 추출 기능이 구현될 장치의 성능, 워터마크의 인식 및 워터마크 데이터의 추출에 소요되는 시간과 컴퓨팅 파워 등을 다양한 요인들을 고려하여, 더 많은 또는 더 적은 개수의 이미지 블록을 사용하도록 선택할 수 있다.
도 23b 및 도 23c는 촬영 이미지(90)로부터 복수의 이미지 블록들이 식별되는 다른 예들을 보여준다. 전술한 바와 같이 사용자가 카메라로 물체를 비출 때 물체가 화면의 정중앙에 오도록 비출 가능성이 높으므로, 촬영 이미지(90)의 정중앙에서 워터마크 데이터를 발견할 가능성이 높도록 이미지 블록들을 설정하는 것이 바람직할 수 있다. 도 23b는, 촬영 이미지(90)의 정중앙을 중심으로 복수의 이미지 블록들이 배치된 예를 보여주는 도면이며, 도 23c는 복수의 이미지 블록들이 촬영 이미지(90)의 정중앙 부근에서 서로 많이 중첩되도록 배치된 예를 보여주는 도면이다.
한편, 워터마크 데이터 임베딩 및 추출 과정에서 둘 이상의 난수열(random number sequence) 세트들 중 어느 하나가 선택적으로 사용되는 몇몇 실시예에서는, 후술할 단계(S250)에서 상기 촬영 이미지(90)로부터 워터마크 데이터를 추출할 때 참조할 난수열을 결정하기 위한 식별자가 촬영 이미지(90)로부터 식별될 수 있다. 여기서 상기 식별자는 난수열 그 자체가 아니라 복수의 난수열들을 서로 구별하는 식별자임에 유의한다. 복수의 난수열 세트들은 워터마크 데이터를 임베딩하는 장치와 워터마크 데이터를 추출하는 장치 사이에 사전에 공유된다. 한편, 상기 식별자는 이미지로부터 데이터를 식별하는 종래의 다양한 방법을 이용하여 상기 촬영 이미지(90)로부터 식별될 수 있다.
전술한 바와 같이, 촬영 이미지를 획득하고 이로부터 복수의 이미지 블록들이 식별되는 단계(S200)가 수행된다.
다음으로, 상기 복수의 이미지 블록들(91 내지 99) 각각에 대하여 노이즈 베이스 이미지와의 제1 유사도를 판정하는 단계(S210)가 수행된다. 단계(S210)에서는 각각의 이미지 블록(91 내지 99)과 노이즈 베이스 이미지를 주파수 도메인 상의 프로세싱을 통해 비교함으로써, 각각의 이미지 블록(91 내지 99)의 제1 유사도, 회전각, 및 스케일이 판정된다. 본 동작과 관련하여 도 24를 참조하여 보다 자세히 설명한다.
먼저, 복수의 이미지 블록들(91 내지 99) 중 하나의 이미지 블록을 주파수 도메인으로 변환하고(S211), 상기 이미지 블록에 대한 2D 매그니튜드 스펙트럼의 이미지(MS2)를 생성한다(S212). 또한, 상기 이미지 블록과 비교 될 노이즈 베이스의 2D 매그니튜드 스펙트럼의 이미지(MS1)도 준비한다(S213). 노이즈 베이스의 2D 매그니튜드 스펙트럼의 이미지(MS1)는 기 저장된 노이즈 베이스의 이미지로부터 생성된 것이거나, 기 저장된 데이터에서 단순히 조회된 것일 수 있다.
다음으로, 노이즈 베이스의 2D 매그니튜드 스펙트럼의 이미지(MS1), 상기 이미지 블록의 2D 매그니튜드 스펙트럼의 이미지(MS2)를 LogPolar 변환한다(S215). LogPolar 변환은 2차원 회전과 크기 변환에 불변한 특성을 가지게 하기 때문에, LogPolar 변환을 사용함으로써, 회전 및 크기 측면에서 신뢰될 수 있는 촬영 이미지의 흠결을 치유하는 효과를 얻을 수 있다.
다음으로, LogPolar 변환 결과로 만들어진 이미지를 각각 주파수 도메인으로 변환하고(S215), 주파수 도메인으로의 변환 결과를 곱한 후(S216), 촬영 이미지에 대한 주파수 도메인으로의 변환 결과(f_LP2)의 매그니튜드 매트릭스로 나누어, 상기 이미지 블록에 대한 제1 결과 매트릭스를 생성한다(S217). 제1 결과 매트릭스는 상기 이미지 블록 내에 노이즈 베이스가 얼마나 포함되어 있는지, 그 비율을 가리키는 매트릭스로 이해될 수 있다. 또한, 제1 결과 매트릭스는 상기 상기 이미지 블록와 상기 노이즈 베이스의 이미지 사이의 유사도를 가리키는 매트릭스로도 이해될 수 있다.
다음으로, 상기 이미지 블록에 대한 제1 결과 매트릭스를 공간 도메인으로 변환하여 상기 이미지 블록에 대한 제1 참조 이미지를 생성한다(S218). 상기 제1 참조 이미지를 이용하여, 상기 이미지 블록의 제1 유사도를 연산한다(S219). 제1 유사도는 상기 이미지 블록에 대한 상기 제1 참조 이미지의 픽셀 값들 중 최대 값이다. 그리고, 회전각은 픽셀 값이 최대 값인 픽셀의 X좌표이고, 스케일은 상기 픽셀의 Y좌표이다(S219).
촬영 이미지(90) 내의 복수의 이미지 블록들(91 내지 99) 각각을 대상으로 상기 단계들(S211 내지 S219)이 수행되며, 그 결과 각각의 이미지 블록에 대한 제1 유사도가 산정된다.
다시 도 21을 참조하여 설명한다.
단계(S220)에서는 전술한 단계(S210)에서의 제1 유사도 산정 결과를 기초로 복수의 이미지 블록들(91 내지 99) 중 제1 이미지 블록을 선정하고, 회전각과 스케일을 반영하여 제1 이미지 블록을 전처리한다.
단계(S220)에서는 먼저 전술한 단계(S210)에서의 복수의 이미지 블록들(91 내지 99) 각각에 대하여 산정된 제1 유사도를 서로 비교한다. 그리고 제1 유사도가 가장 큰 이미지 블록을 제1 이미지 블록으로 선정한다. 촬영 이미지(90) 내에서 제1 유사도가 가장 큰 이미지 블록은, 촬영 이미지(90) 내에서 워터마크가 존재할 가능성이 가장 높은 영역으로 이해될 수 있다. 단계(S220)에서는 복수의 이미지 블록들(91 내지 99) 중에 워터마크가 존재할 가능성이 가장 높은 제1 영역을 선정함으로써, 후술할 단계들(S230 내지 S250)에서의 워터마크 정밀 인식 및 워터마크 데이터 추출에 관련된 처리의 대상을, 촬영 이미지(90) 전체가 아닌 촬영 이미지(90) 내의 일부 영역으로 한정한다. 이로 인해, 후술할 단계들(S230 내지 S250)의 수행 과정에서 소모되는 컴퓨팅 파워와 처리 시간이 절감될 수 있다.
몇몇 실시예에서, 상기 복수의 이미지 블록들(91 내지 99) 각각에 대하여 산정된 제1 유사도가 모두 임계치 미만인 경우에는, 복수의 이미지 블록들(91 내지 99) 중 어디에도 워터마크 데이터가 존재하지 않는다는 것을 암시하는 것일 수 있다. 따라서, 상기 제1 이미지 블록의 제1 유사도가 임계치 미만인 경우에는, 촬영 이미지(90)를 대상으로 한 워터마크 데이터 추출 동작을 중단하고, 단계(S200)로 돌아가서 새로운 촬영 이미지가 자동으로 획득될 수 있다. 예를 들어, 워터마크의 존재 여부를 판별할 물체를 촬영하고 있는 스마트폰 카메라의 화면에 프리뷰로 보여지고 있는 이미지가 새로운 촬영 이미지로서 자동으로 획득될 수 있다. 이어서 새로운 촬영 이미지 내의 복수의 이미지 블록이 식별되고, 단계(S210) 이후의 동작들이 반복될 수 있다.
단계(S220)에서는, 상기 선정된 제1 이미지 블록에 대한 전처리를 수행한다.
단계(S210)와 관련하여 앞서 설명한 바와 같이, 복수의 이미지 블록들(91 내지 99) 각각에 대한 제1 유사도 산정 과정에서, 각 이미지 블록의 회전각(제1 참조 이미지의 픽셀들 중 최대 값을 가지는 픽셀의 X좌표) 및 스케일(상기 픽셀의 Y좌표)가 함께 획득된다. 단계(S220)에서는, 제1 이미지 블록에 관하여 획득된 회전각 및 스케일을 이용하여 제1 이미지 블록에 대한 전처리를 수행한다.
상기 전처리의 결과는 도 25를 참조하여 이해될 수 있을 것이다. 상기 전처리의 결과, 촬영된 이미지(90)의 방향(orientation)이 정합되고, 크기 또한 노이즈 베이스와의 비교에 부합하도록 보정된다.
다시 도 21을 참조하여 설명한다.
단계(S230)에서는, 회전각과 스케일이 보정된 제1 이미지 블록(이하, "보정 이미지"라고 지칭한다)에 대한 제2 유사도를 산정하고 워터마크 추출 기준점을 결정하기 위한 동작들이 수행된다. 단계(S230)에서는, 보정 이미지와 노이즈 베이스 이미지를 주파수 도메인 상의 프로세싱을 통해 비교함으로써, 보정 이미지의 제2 유사도가 산정되고, 보정 이미지로부터 워터마크를 추출하는 것의 기준이 되는 기준점이 결정된다. 본 동작과 관련하여 도 26을 참조하여 보다 자세히 설명한다.
단계(S230)에서 보정 이미지를 대상으로 하는 제2 유사도 산정 동작은, 단계(S210)에서의 복수의 이미지 블록들(91 내지 99) 각각을 대상으로 하는 제1 유사도 산정 동작과 비교하여, 이미지 블록에 대한 LogPolar 변환을 수행하지 않는 점을 제외하고는 유사하다.
구체적으로, 보정 이미지를 주파수 도메인으로의 변환하여 주파수 도메인 매트릭스(f2)를 획득하는 단계(S231), 노이즈 베이스의 주파수 도메인 매트릭스(f1)를 조회하거나 생성하는 단계(S232), 상기 f1과 f2를 곱한 매트릭스인 R'을 생성하는 단계(S233), 상기 R'을 f2의 매그니튜드 매트릭스로 나누어 제2 결과 매트릭스를 만드는 단계(S234), 상기 제2 결과 매트릭스를 공간 도메인으로 변환하여 제2 참조 이미지를 생성하는 단계(S235)가 수행된다. 이때, 상기 제2 결과 매트릭스는, 보정 이미지 내에 노이즈 베이스가 얼마나 포함되어 있는지, 그 비율을 가리키는 매트릭스로 이해될 수 있다.
단계(S236)에서는, 상기 단계(S235)에서 생성된 제2 참조 이미지를 분석하여, 보정 이미지와 노이즈 베이스 이미지의 제2 유사도 및 보정 이미지 내의 노이즈 베이스 위치에 대한 정보를 획득한다. 구체적으로, 제2 참조 이미지의 픽셀 값 중 가장 큰 픽셀 값을 가지는 기준 픽셀의 좌표는 워터마크 데이터 추출 위치인 기준점으로 결정한다. 또한, 상기 기준 픽셀의 픽셀 값을 상기 보정 이미지의 제2 유사도로 결정한다.
다시 도 21을 참조하여 설명한다.
단계(S240)에서는 단계(S236)에서 보정 이미지에 대해 산정된 제2 유사도와 임계치를 비교한다.
제2 유사도가 임계치 미만인 경우, 이는 보정 이미지에 워터마크가 존재하지 않거나, 보정 이미지로부터 워터마크 데이터를 추출할 수 없다는 것을 암시할 수 있다. 이 경우, 상기 보정 이미지(단계(S200)에서 촬영 이미지(90)로부터 선택된 일부 영역인 제1 이미지 블록을 보정한 이미지)를 대상으로 한 워터마크 데이터 추출 동작을 중단한다.
몇몇 실시예에서, 제2 유사도가 임계치 미만인 경우, 단계(S200)으로 돌아가서 새로운 촬영 이미지가 자동으로 획득될 수 있다. 예를 들어, 워터마크의 존재 여부를 판별할 물체를 촬영하고 있는 스마트폰 카메라의 화면에 프리뷰로 보여지고 있는 이미지가 새로운 촬영 이미지로서 자동으로 획득될 수 있다. 이어서 새로운 촬영 이미지 내의 복수의 이미지 블록이 식별되고, 단계(S210) 이후의 동작들이 반복될 수 있다.
다른 몇몇 실시예에서, 제2 유사도가 임계치 미만인 경우, 단계(S210)에서 선정된 제1 이미지 블록이 아닌 다른 이미지 블록을 대상으로, 단계(S220) 이후의 동작들이 반복될 수 있다. 전술한 바와 같이, 앞선 단계(S210)에서는 복수의 이미지 블록들(91 내지 99)과 노이즈 베이스 이미지 사이의 제1 유사도 산정 결과에 기초하여, 제1 유사도가 가장 높은 이미지 블록이 제1 이미지 블록으로 선정되고, 상기 제1 이미지 블록을 기초로 후속 단계들(S220 내지 S230)이 수행된다. 만약 상기 제1 이미지 블록을 기초로 산정된 제2 유사도가 임계치 미만인 경우, 단계(S210)에서 산정된 제1 유사도가 두 번째로 높은 이미지 블록이 제2 이미지 블록으로 식별되고, 상기 제2 이미지 블록을 대상으로 후속 단계들(S220 내지 S230)이 수행될 수 있다.
전술한 실시예와 같이, 기존의 촬영 이미지(90) 내의 제2 이미지 블록을 대상으로 워터마크 데이터 추출 과정의 일부 동작들(단계 S220 내지 S250)을 수행하는 실시예는, 새로운 촬영 이미지를 획득하여 워터마크 데이터 추출의 전 과정(단계 S200 내지 S250)을 수행하는 실시예와 비교할 때, 컴퓨팅 파워 및 처리 시간을 절감하는 장점을 가질 수 있다. 이는, 새로운 촬영 이미지를 복수의 이미지 블록들로 구획하고 각 블록에 대한 제1 유사도를 산정하는 과정(단계 S200 내지 S210)을 생략할 수 있기 때문이다.
다시 도 21을 참조하여 설명한다.
단계(S240)에서는 제2 유사도가 임계치 이상인 경우, 단계(S250)로 진행한다.
단계(S250)에서는, 단계(240)에서 획득된 워터마크 데이터 추출 기준점을 기준으로, 워터마크 데이터를 추출한다. 도 27을 참조하여 설명한다.
먼저 보정 이미지를 모노크롬화 한다(S251). 이 때, 노이즈를 원본 이미지에 삽입하는 데에 사용된 α, β, γ 세 가지의 상수를 동일하게 사용한다. 그 결과 보정 이미지 내의 노이즈 표현이 극대화 될 것이다.
그리고, 모노크롬화 된 보정 이미지를 2 x 2 픽셀 크기의 블록 단위로 구획화한다(S252).
후속 단계들(S253 내지 S256)에서는, 모노크롬화된 보정 이미지의 각 블록들(2 x 2 픽셀)을 순회하면서, 워터마크 데이터가 추출된다.
먼저 단계(S253)에서는, 모노크롬화된 보정 이미지의 현재 블록의 데이터 추출 규칙이 결정된다. 상기 데이터 추출 규칙은, 도 8을 참조하여 예를 들어 설명한 6가지 케이스의 데이터 임베딩 패턴들에 대응되는 것이다. 다시 말해, 각각의 블록에 워터마크 데이터를 임베딩할 때 사용한 규칙이 각 블록의 데이터 추출 규칙이다.
각 블록의 데이터 추출 규칙은 사전에 생성된 난수열(random number sequence)을 참조하여 결정될 수 있다. 예를 들어 모노크롬화된 보정 이미지의 첫번째 블록에는 난수열의 첫번째 숫자가 가리키는 데이터 추출 규칙(예컨대 도 8에 예시된 6가지 패턴 중 어느 하나)이 적용되고, 두번째 블록에는 난수열의 두번째 숫자가 가리키는 데이터 추출 규칙이 적용된다. 상기 난수열은 이미지에 워터마크 데이터를 임베딩하는 과정에서 데이터 임베딩 규칙을 결정하기 위해 참조한 난수열과 정확히 일치하는 것임을 이해할 것이다. 몇몇 실시예에서 상기 난수열은 이미지에 워터마크 데이터를 임베딩하는 장치와 이미지로부터 워터마크 데이터를 추출하는 장치 사이에 사전에 공유되는 것일 수 있다.
한편, 워터마크 데이터 임베딩 및 추출 과정에서 둘 이상의 난수열(random number sequence) 세트들 중 어느 하나가 선택적으로 사용되는 몇몇 실시예에서는, 복수의 난수열 세트들 중에, 전술한 단계(S200)에서 상기 촬영 이미지(90)로부터 식별된 난수열 식별자가 가리키는 난수열이 식별되어, 상기 모노크롬화된 보정 이미지로부터 워터마크 데이터를 추출하는 규칙을 결정하는데 이용될 수 있다.
이어서 단계(S254)에서는, 2 x 2 픽셀 단위로 블록화 된 노이즈 베이스 이미지를 참조하여, 이전 단계(S253)에서 결정된 데이터 추출 규칙에 따라, 현재 블록의 워터마크 데이터를 추출한다. 블록화 된 노이즈 베이스 이미지를 참조하여 현재 블록으로부터 워터마크 데이터를 추출하는 동작은, 도 7 내지 도 13을 참조하여 설명한 임베딩 과정의 역순으로 이해될 수 있다.
단계(S255)에서는, 상기 모노크롬화된 보정 이미지의 모든 블록에 대하여 워터마크 데이터 추출이 완료되었는지 판정되고, 데이터 추출이 완료되었다면, 각 블록으로부터 추출된 데이터가 연결(concatenation)되어, 전체 워터마크 데이터가 생성된다. 생성된 전체 워터마크 데이터는 디스플레이, 전송, 또는 출력될 수 있다.
단계(S255)에서, 상기 모노크롬화된 보정 이미지의 모든 블록에 대한 추출이 완료되지 않았다면, 다음 블록으로 이동한다(S256). 모노크롬화된 보정 이미지 블록을 순회하는 순서는 임베딩 과정의 블록 순회 순서와 동일하게 한다. 이어서 다시 단계(S253)에서는, 난수열을 참조하여, 모노크롬화된 보정 이미지의 다음 블록에 대한 데이터 추출 규칙을 결정하고, 단계(S254)로 진행하여 다음 블록에 임베딩된 워터마크 데이터를 추출하는 과정을 반복한다.
지금까지 도 21 내지 도 27을 참조하여 설명한 본 발명 몇몇 실시예에 따른 워터마크 데이터 추출 방법은, 촬영 이미지(90)를 대상으로 워터마크 존재여부 판별 및 워터마크 데이터 추출 시도의 전 과정(S200 내지 S250)을 수행하는 대신에, 촬영 이미지(90)의 일부분들인 복수의 이미지 블록들 각각의 제1 유사도를 산정한 후(S210), 제1 유사도가 가장 높은 하나의 이미지 블록만을 대상으로 후속 동작들(S220 내지 S250)을 수행한다. 이로써, 동작들(S220 내지 S250)에 소모되는 컴퓨팅 파워를 절감하고 동작들(S220 내지 S250)의 수행으로 인해 유발되는 처리 지연 시간이 줄어든다. 또한 워터마크가 임베드된 이미지에 워터마크 인식 장치를 향하는 동시에 인식이 완료되기를 희망하는 사용자들의 요구를 충족시킬 수 있게 된다.
본 발명 몇몇 실시예에 따른 워터마크 데이터 추출 방법은, 노이즈 베이스 이미지에 워터마크 데이터의 각 비트(bit)를 임베딩하거나 워터마크가 임베딩된 이미지로부터 워터마크 데이터의 각 비트를 추출해 냄에 있어서, 매 비트에 대하여 하나의 동일한 임베딩/추출 규칙을 사용하는 대신에, 사전 생성되어 공유되는 난수열의 각 난수가 가리키는 복수의 임베딩/추출 규칙들 중 어느 하나의 임베딩/추출 규칙을 사용한다. 이로써, 노이즈 베이스 이미지 원본(40)이 유출되더라도, 노이즈 베이스 이미지에 워터마크 데이터의 각 비트를 임베딩할 때 사용되는 난수열이 유출되지 않는 한, 제3자가 워터마크 이미지에 임베딩된 데이터를 무단으로 추출할 수 없게 된다. 즉, 워터마크 데이터 임베딩/추출 알고리즘의 보안성이 대폭 개선된다. 또한, 워터마크가 임베딩된 결과 이미지에 물결 무늬 등의 패턴이 생기는 문제를 해소된다.
본 발명 몇몇 실시예에 따른 워터마크 데이터 추출 방법은, 서로 다른 워터마크마다 서로 다른 난수열 세트를 사용하고, 워터마크 데이터 추출시에 적절한 난수열 세트를 식별하여 데이터 추출에 사용할 수 있도록 함으로써, 어느 하나의 난수열 세트가 유출되더라도, 다른 난수열을 이용하여 생성된 워터마크 이미지에 임베딩된 데이터를 제3자가 무단으로 추출할 수 없게 된다. 즉, 워터마크 데이터 임베딩/추출 알고리즘의 보안성을 한층 더 향상시킬 수 있게 된다.
지금까지 설명된 본 발명의 실시예에 따른 방법들은 컴퓨터가 읽을 수 있는 코드로 구현된 컴퓨터프로그램의 실행에 의하여 수행될 수 있다. 상기 컴퓨터프로그램은 인터넷 등의 네트워크를 통하여 제1 컴퓨팅 장치로부터 제2 컴퓨팅 장치에 전송되어 상기 제2 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 제2 컴퓨팅 장치에서 사용될 수 있다. 상기 제1 컴퓨팅 장치 및 상기 제2 컴퓨팅 장치는, 서버 장치, 클라우드 서비스를 위한 서버 풀에 속한 물리 서버, 데스크탑 피씨와 같은 고정식 컴퓨팅 장치를 모두 포함한다.
상기 컴퓨터프로그램은 DVD-ROM, 플래시 메모리 장치 등의 기록매체에 저장된 것일 수도 있다.
본 발명의 실시예에 따른 워터마크 데이터의 임베딩 및 추출 방법은 도 25에 도시된 것과 같이 바라보는 방향에 따라 서로 다른 노이즈가 인식되는 형태로 변형되어 실시될 수도 있다.
이하, 본 발명의 다른 실시예에 다른 데이터 임베딩 장치의 구성 및 동작을 도 28를 참조하여 설명하기로 한다. 도 28에 도시된 바와 같이, 본 실시예에 따른 데이터 임베딩 장치(300)는 메모리(RAM)(330), 메모리(330)에 로드 된 데이터 임베딩 소프트웨어 오퍼레이션을 실행하는 이미지 프로세서(320) 및 스토리지(340)를 포함한다. 일 실시예에서, 임베딩 장치(300)는 이미지 센서(310), 네트워크 인터페이스(370), 시스템 버스(350) 및 프린터 인터페이스(360)를 더 포함할 수 있다.
스토리지(340)는 도 1 내지 도 20을 참조하여 설명한 데이터 임베딩 방법을 소프트웨어 형태로 구현한 데이터 임베딩 소프트웨어의 실행 파일(바이너리 파일)(342)을 저장한다. 데이터 임베딩 소프트웨어의 실행 파일(342)은 버스(350)를 통해 메모리(330)에 로드 될 수 있다. 도 28에는 메모리(330)에 로드 된 데이터 임베딩 소프트웨어의 오퍼레이션(332)이 도시되어 있다.
스토리지(340)는 노이즈 베이스 데이터(341)를 더 저장할 수 있다. 일 실시예에서, 스토리지(340)는 노이즈 베이스 데이터(341)를 저장하되, 암호화된 형태로 저장하여, 외부에 노이즈 베이스 원본이 유출되는 것을 방지할 수 있다. 일 실시예에서, 스토리지(340)는 데이터 임베딩 소프트웨어 실행 파일 내에 리소스(resource)의 형태로 노이즈 베이스 데이터를 포함시켜, 외부에 노이즈 베이스 원본이 유출되는 것을 방지할 수도 있다.
스토리지(340)는 워터마크 데이터를 임베딩하는 규칙을 가리키는 하나 이상의 난수열 세트들을 더 저장할 수 있다. 일 실시예에서, 스토리지(440)는 상기 난수열을 암호화된 형태로 저장하고, 데이터 임베딩 소프트웨어 실행 파일 내에 리소스(resource)의 형태로 저장할 수 있다.
데이터 임베딩 장치(300)는 워터마킹 데이터를 네트워크 인터페이스(370)를 통하여 외부 장치로부터 수신하거나, 키보드, 마우스 등 입력부(미도시)를 통하여 사용자로부터 직접 입력 받거나, 스토리지(340)에 저장된 워터마킹 데이터(미도시)를 리드(read)할 수 있다. 데이터 임베딩 장치(300)는 상기 워터마킹 데이터를 임베드 할 대상인 오리지널 이미지를, 대상 물체를 촬영하는 이미지 센서(310)로부터 얻거나, 네트워크 인터페이스(370)를 통하여 외부 장치로부터 수신하거나, 스토리지(340)에 저장된 워터마킹 데이터(미도시)를 리드(read)할 수 있다.
데이터 임베딩 장치(300)는 상기 워터마킹 데이터 및 상기 오리지널 이미지를 데이터 임베딩 소프트웨어에 입력하여 산출 된 결과물 이미지를 네트워크 인터페이스(370)를 통하여 외부 장치에 송신하거나, 디스플레이 장치(미도시)에 디스플레이 하거나, 프린터 인터페이스(360)를 통해 연결된 프린팅 장치를 통하여 프린트 할 수 있다.
본 실시예에 따른 데이터 임베딩 장치(300)는, 예를 들어 컴퓨팅 장치이거나, 프린팅 장치일 수 있다. 데이터 임베딩 장치(300)가 프린팅 장치인 경우, 데이터 임베딩 장치(300)는 프린터 인터페이스(360) 대신 프린팅 기능의 수행을 위한 구성요소들을 포함할 수 있다.
이하, 본 발명의 다른 실시예에 다른 데이터 디코딩 장치의 구성 및 동작을 도 29를 참조하여 설명하기로 한다. 본 명세서에서 워터마킹 데이터의 디코딩과 워터마킹 데이터의 추출은 실질적으로 동일한 동작을 가리킨다. 도 29에 도시된 바와 같이, 본 실시예에 따른 데이터 디코딩 장치(400)는 메모리(RAM)(430), 메모리(430)에 로드 된 데이터 디코딩 소프트웨어 오퍼레이션을 실행하는 이미지 프로세서(420) 및 스토리지(440)를 포함한다. 일 실시예에서, 디코딩 장치(400)는 이미지 센서(410), 네트워크 인터페이스(470), 시스템 버스(350) 및 워터마킹 데이터 해석 프로세서(460)를 더 포함할 수 있다.
스토리지(440)는 도 21 내지 도 27을 참조하여 설명한 데이터 추출 방법을 소프트웨어 형태로 구현한 데이터 디코딩 소프트웨어의 실행 파일(바이너리 파일)(442)을 저장한다. 데이터 디코딩 소프트웨어의 실행 파일(442)은 버스(450)를 통해 메모리(430)에 로드 될 수 있다. 도 29에는 메모리(430)에 로드 된 데이터 디코딩 소프트웨어의 오퍼레이션(432)이 도시되어 있다.
스토리지(440)는 노이즈 베이스 데이터(441)를 더 저장할 수 있다. 일 실시예에서, 스토리지(440)는 노이즈 베이스 데이터(441)를 저장하되, 암호화된 형태로 저장하거나, 데이터 디코딩 소프트웨어 실행 파일 내에 리소스(resource)의 형태로 노이즈 베이스 데이터를 포함시켜, 외부에 노이즈 베이스 원본이 유출되는 것을 방지할 수 있다.
스토리지(440)는 워터마크 데이터를 추출하는 규칙을 가리키는 하나 이상의 난수열 세트들을 더 저장할 수 있다. 일 실시예에서, 스토리지(440)는 상기 난수열을 암호화된 형태로 저장하고, 데이터 디코딩 소프트웨어 실행 파일 내에 리소스(resource)의 형태로 저장할 수 있다.
데이터 디코딩 장치(400)는 워터마킹 데이터가 임베딩 된 이미지가 프린트 된 대상 물체를 촬영하는 이미지 센서(410)로부터 촬영 이미지의 데이터를 얻거나, 네트워크 인터페이스(470)를 통하여 외부 장치로부터 수신하거나, 스토리지(440)에 저장된 촬영 이미지의 데이터를 얻을 수 있다. 상기 촬영 이미지의 데이터는 시스템 버스(450)를 통하여 메모리(430)에 로드 되고, 데이터 디코딩 소프트웨어 오퍼레이션(432)의 실행 시 참조된다.
데이터 디코딩 장치(400)는 데이터 디코딩 소프트웨어 오퍼레이션(432)의 실행 결과로 추출된 워터마크 데이터를 디스플레이(미도시)에 표시하거나, 네트워크 인터페이스(470)를 통하여 외부 장치에 송신하거나, 스토리지(440)에 저장하거나, 기타 다른 방식으로 출력할 수 있다.
일 실시예에서, 데이터 디코딩 장치(400)는 상기 추출된 워터마크 데이터를 이용한 프로세스를 수행하는 워터마킹 데이터 해석 프로세서(460)를 포함할 수 있다. 예를 들어, 상기 워터마크 데이터의 바디 데이터를 추출하고(표 1 참조), 상기 바디 데이터 및 컨트롤 파라미터(표 1 참조)를 수납한 컨텐츠 요청을 네트워크 인터페이스(470)를 통하여 컨텐츠 서버(미도시)에 송신할 수 있다. 데이터 디코딩 장치(400)의 디스플레이 장치(미도시)는 상기 컨텐츠 서버로부터 상기 컨텐츠 요청에 대한 응답으로서 수신된 컨텐츠를 디스플레이 할 수 있다.
본 실시예에 따른 데이터 디코딩 장치(400)는, 예를 들어 카메라가 구비된 이동 단말일 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다.
Claims (7)
- 워터마크 데이터를 오리지널 이미지에 임베딩(Embedding)하는 방법에 있어서,
복수의 픽셀을 가진 블록 단위로 구성된 노이즈 베이스 이미지의 각각의 블록을 순회하면서 상기 워터마크 데이터를 이용하여 상기 각각의 블록의 일부 픽셀의 픽셀 값을 수정함으로써 상기 노이즈 베이스 이미지를 변환하는 단계를 포함하되,
상기 오리지널 이미지의 무늬 경향성을 얻는 단계를 더 포함하고,
상기 노이즈 베이스 이미지는,
상기 오리지널 이미지의 무늬 경향성에 대응되는 형태인 것인,
데이터 임베딩 방법. - 제1 항에 있어서,
상기 오리지널 이미지의 무늬 경향성을 얻는 단계는,
상기 오리지널 이미지의 무늬 가로 세로 경향성을 수치로 얻는 단계를 포함하고,
상기 수치가 기준치 이하에 해당하는 경우 상기 노이즈 베이스 이미지는 상기 수치에 대응되는 형태의 직사각형 이미지인,
데이터 임베딩 방법. - 제2 항에 있어서,
상기 경향성을 수치로 얻는 단계는,
상기 오리지널 이미지의 푸리에 변환 주파수 도메인의 크기 스펙트럼에서 피크 좌표가 가장 인접한 축과의 최소 거리를 얻는 단계를 포함하되,
상기 최소 거리는 기 정의된 값 이하인 것인,
데이터 임베딩 방법. - 제3 항에 있어서,
상기 직사각형 이미지는,
상기 피크 좌표와 가장 인접한 상기 축이 x축에 해당하는 경우, 사각형의 세로 길이가 가로 길이 보다 더 긴 직사각형 이미지인,
데이터 임베딩 방법. - 제3 항에 있어서,
상기 직사각형 이미지는,
상기 피크 좌표와 인접한 상기 축이 y축에 해당하는 경우, 사각형의 가로 길이가 세로 길이 보다 더 긴 직사각형 이미지인,
데이터 임베딩 방법. - 제1 항에 있어서,
상기 오리지널 이미지를 상기 변환된 노이즈 베이스 이미지를 이용하여 조정하는 단계를 더 포함하되,
상기 조정하는 단계는,
상기 오리지널 이미지가 세로 무늬 오리지널 이미지인 경우,
세로가 가로보다 더 긴 상기 변환된 노이즈 베이스 이미지가 상기 오리지널 이미지에 배치되는 단계를 포함하는,
데이터 임베딩 방법. - 제1 항에 있어서,
상기 오리지널 이미지를 상기 변환된 노이즈 베이스 이미지를 이용하여 조정하는 단계를 더 포함하되,
상기 조정하는 단계는,
상기 오리지널 이미지가 가로 무늬 오리지널 이미지인 경우,
가로가 세로보다 더 긴 상기 변환된 노이즈 베이스 이미지가 상기 오리지널 이미지에 배치되는 단계를 포함하는,
데이터 임베딩 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220103997A KR102564641B1 (ko) | 2020-03-23 | 2022-08-19 | 워터마크 데이터의 임베딩 및 추출 방법 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200035286A KR102435876B1 (ko) | 2020-03-23 | 2020-03-23 | 워터마크 데이터의 임베딩 및 추출 방법 |
KR1020220103997A KR102564641B1 (ko) | 2020-03-23 | 2022-08-19 | 워터마크 데이터의 임베딩 및 추출 방법 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200035286A Division KR102435876B1 (ko) | 2020-03-23 | 2020-03-23 | 워터마크 데이터의 임베딩 및 추출 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220122575A KR20220122575A (ko) | 2022-09-02 |
KR102564641B1 true KR102564641B1 (ko) | 2023-08-08 |
Family
ID=78609804
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200035286A KR102435876B1 (ko) | 2020-03-23 | 2020-03-23 | 워터마크 데이터의 임베딩 및 추출 방법 |
KR1020220103997A KR102564641B1 (ko) | 2020-03-23 | 2022-08-19 | 워터마크 데이터의 임베딩 및 추출 방법 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200035286A KR102435876B1 (ko) | 2020-03-23 | 2020-03-23 | 워터마크 데이터의 임베딩 및 추출 방법 |
Country Status (1)
Country | Link |
---|---|
KR (2) | KR102435876B1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114501454A (zh) * | 2021-12-27 | 2022-05-13 | 南京信息工程大学 | 一种基于双水印的WSNs数据完整性认证方法 |
CN115150390B (zh) * | 2022-06-27 | 2024-04-09 | 山东信通电子股份有限公司 | 一种图像显示方法、装置、设备及介质 |
KR102679321B1 (ko) * | 2023-08-09 | 2024-06-28 | 스냅태그 주식회사 | 워터마크 임베딩 방법 및 그 시스템 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011041180A (ja) * | 2009-08-18 | 2011-02-24 | Nippon Hoso Kyokai <Nhk> | 受信機管理システム |
JP2011151533A (ja) * | 2010-01-20 | 2011-08-04 | Kyodo Printing Co Ltd | 電子透かし印刷物、該電子透かし印刷物の読み取りシステム、該電子透かし印刷物の読み取り方法、及び、該電子透かし印刷物の製造システム |
JP2013115669A (ja) * | 2011-11-29 | 2013-06-10 | Fujitsu Ltd | 電子透かし埋め込み装置、電子透かし埋め込み方法、電子透かし検出装置及び電子透かし検出方法 |
KR101960290B1 (ko) * | 2018-07-05 | 2019-03-21 | 주식회사 하루컴퍼니 | 워터마크 데이터의 임베딩 및 추출 방법 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100697768B1 (ko) * | 2005-06-28 | 2007-03-20 | 한국과학기술원 | Cht를 이용한 디지털 워터마킹 방법 |
KR101877372B1 (ko) | 2017-05-19 | 2018-07-13 | 주식회사 하루컴퍼니 | 워터마크 데이터의 임베딩 및 추출 방법 |
-
2020
- 2020-03-23 KR KR1020200035286A patent/KR102435876B1/ko active IP Right Grant
-
2022
- 2022-08-19 KR KR1020220103997A patent/KR102564641B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011041180A (ja) * | 2009-08-18 | 2011-02-24 | Nippon Hoso Kyokai <Nhk> | 受信機管理システム |
JP2011151533A (ja) * | 2010-01-20 | 2011-08-04 | Kyodo Printing Co Ltd | 電子透かし印刷物、該電子透かし印刷物の読み取りシステム、該電子透かし印刷物の読み取り方法、及び、該電子透かし印刷物の製造システム |
JP2013115669A (ja) * | 2011-11-29 | 2013-06-10 | Fujitsu Ltd | 電子透かし埋め込み装置、電子透かし埋め込み方法、電子透かし検出装置及び電子透かし検出方法 |
KR101960290B1 (ko) * | 2018-07-05 | 2019-03-21 | 주식회사 하루컴퍼니 | 워터마크 데이터의 임베딩 및 추출 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR102435876B1 (ko) | 2022-08-24 |
KR20210118704A (ko) | 2021-10-01 |
KR20220122575A (ko) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102564641B1 (ko) | 워터마크 데이터의 임베딩 및 추출 방법 | |
US11134167B2 (en) | Method of embedding and extracting watermark data using a correction image comparison with a noise-based image in the frequency domain | |
Fang et al. | Screen-shooting resilient watermarking | |
US20220335561A1 (en) | Embedding signals in a raster image processor | |
KR101877372B1 (ko) | 워터마크 데이터의 임베딩 및 추출 방법 | |
JP4485585B2 (ja) | デジタル像符牒の処理方法及びシステム | |
KR101960290B1 (ko) | 워터마크 데이터의 임베딩 및 추출 방법 | |
KR20240093440A (ko) | 워터마크 데이터의 임베딩 및 추출 방법 | |
CN110210467B (zh) | 一种文本图像的公式定位方法、图像处理装置、存储介质 | |
US7961941B2 (en) | Color form dropout using dynamic geometric solid thresholding | |
KR20230132761A (ko) | 워터마크 데이터의 임베딩 및 추출 방법 | |
CN108596817B (zh) | 一种水印数据的嵌入及提取方法 | |
KR102679321B1 (ko) | 워터마크 임베딩 방법 및 그 시스템 | |
CN113344763B (zh) | 面向屏幕拍照的基于jnd的鲁棒水印算法 | |
JP2024088223A (ja) | 電子透かしの埋め込み及び抽出方法 | |
CN118967171A (zh) | 一种基于二维码对烟包印刷产品真假进行检验的方法 | |
Yamada et al. | Maintaining image quality when watermarking grayscale comic images for electronic books | |
Kuob et al. | Anticollusion Watermarking of 3D Meshes by Prewarping |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |