KR100944488B1 - 방위각을 이용한 벡터 데이터 워터마크 삽입방법 및검출방법 - Google Patents

방위각을 이용한 벡터 데이터 워터마크 삽입방법 및검출방법 Download PDF

Info

Publication number
KR100944488B1
KR100944488B1 KR1020070095773A KR20070095773A KR100944488B1 KR 100944488 B1 KR100944488 B1 KR 100944488B1 KR 1020070095773 A KR1020070095773 A KR 1020070095773A KR 20070095773 A KR20070095773 A KR 20070095773A KR 100944488 B1 KR100944488 B1 KR 100944488B1
Authority
KR
South Korea
Prior art keywords
watermark
data
azimuth angle
azimuth
standard deviation
Prior art date
Application number
KR1020070095773A
Other languages
English (en)
Other versions
KR20090030454A (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 KR1020070095773A priority Critical patent/KR100944488B1/ko
Publication of KR20090030454A publication Critical patent/KR20090030454A/ko
Application granted granted Critical
Publication of KR100944488B1 publication Critical patent/KR100944488B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

본 발명은 보호 대상 데이터에 워터마크를 삽입하고 추출하는 방법에 관한 것으로, 본 발명에 따른 벡터 데이터 워터마크 삽입방법은 벡터 형식의 원본 데이터에 워터마크를 삽입하는 벡터 데이터 워터마크 삽입방법에 있어서, 상기 원본 데이터에 포함된 각 객체별 방위각의 합을 계산하는 제 1 단계, 상기 각 객체별 방위각 합의 평균인 평균방위각 및 그에 따른 표준편차를 계산하는 제 2 단계, 워터마크 소유자 식별용 기준방위각을 설정하는 제 3 단계, 상기 기준방위각과 표준편차를 이용하여 워터마크가 삽입될 대상 객체를 선택하는 제 4 단계, 상기 대상 객체를 구성하는 좌표에 워터마크를 삽입하는 제 5 단계를 포함하여 이루어져, 방위각을 이용하여 객체 전체에 워터마크를 삽입하기 때문에, 워터마크를 삽입한 후에 객체의 모양 변화가 없어 객체 데이터의 왜곡현상이 없고, 객체의 겹쳐짐과 같은 공간관계를 비교하여 워터마크를 삽입함으로써 워터마크가 삽입이 된 후 공간관계가 변형되는 것을 방지하고, 벡터 데이터에 대한 다양한 공격에도 워터마크의 검출률이 높고, 벡터 데이터의 특징과 장점을 잘 살릴 수가 있는 효과가 있다.
워터마크, 워터마킹, 벡터 데이터, 방위각, 표준편차

Description

방위각을 이용한 벡터 데이터 워터마크 삽입방법 및 검출방법{Watermark Inserting Method to Vector data for using Azimuth Information and Watermark Detecting Method to the same}
본 발명은 보호 대상 데이터에 워터마크를 삽입하고 추출하는 방법에 관한 것으로, 특히 공간 객체에 관한 좌표값을 가지는 벡터 데이터에 방위각을 이용하여 워터마크를 삽입하고 추출하는 방법에 관한 것이다.
세계 최초의 컴퓨터인 애니악(ENIAC)이 개발된 이후로, 컴퓨터의 성능은 더욱 좋아지고 발전하면서, 컴퓨터는 이제 우리 생활에 없어서는 안 되는 필수도구로 되었다. 이러한 컴퓨터의 보급에 힘입어 각종 데이터가 디지털화되어 보다 용이하게 사용되고 있는 실정이다. 또한, 최근에는 네트워크 기술과 인터넷의 보급이 확산되면서 더욱 많은 사람들이 컴퓨터와 인터넷을 사용하고 있는 추세이다. 인터넷 보급은 음성정보와 영상정보 등의 정보 교환을 활발하게 해주면서 동시에 각종 정보를 공유하고 교환할 수 있게 해준다. 특히, 디지털화된 데이터는 인터넷을 통해 데이터의 손실 없이 전송이 가능하다. 이렇듯 다양한 디지털화된 정보가 쉽게 전송이 가능해짐에 따라 그 정보를 소유하고 있는 소유권자나 소유기관의 권한을 보호 해야할 필요성이 증대되고 있다.
이러한 저작권 보호를 위해 현재까지 많은 연구들이 있어왔으나, 그 중에서 가장 주목받는 기술은 워터마크로서 이에 관한 표준화 작업이 많이 이루어지고 있으며, 관련 서비스를 제공하는 회사들도 속속 등장하고 있다. 지금까지 연구되어 온 워터마킹 기법들을 살펴보면 대부분 이미지, 오디오, 동영상 등의 데이터에 관한 기법들이다. 이들 데이터는 사실상 매우 많은 분야에서 쓰이고 있으며 매우 대중적인 형태이기 때문에 이들에 관한 연구 또한 많이 이루어졌었다. 그리고 이러한 데이터들에 적용되는 다양한 알고리즘이 제안되었으나, 대부분이 주파수 영역에서의(in the frequency domain) 워터마킹에 관한 알고리즘이였다.
이미지 데이터에 관한 연구는 기존에 많이 이루어졌다. 이러한 알고리즘을 바로 벡터 데이터에 적용은 불가능하지만, 기본적인 방법에서는 유사한 점이 있으므로 래스터 데이터에 관한 연구 동향을 살펴보겠다.
이미지에 대한 워터마킹 방법은 주로 주파수 도메인(frequency domain)에서 이루어졌다. 주파수 도메인(frequency domain)은 DFT(Discrete Fourier Transform), DCT(Discrete Cosine Transform), DWT(Discrete Wavelet Transform)로 방법으로 분류할 수 있다.
먼저, DFT(Discrete Fourier Transform)를 이용한 연구는 다음과 같다.
D-C Lou와 C-H Sung는 회전, 축척 변화, 이동에 강한 워터마킹 알고리즘을 제안하였다(D-C Lou, C-H Sung, "Robust Watermarking Technique for Digital Images utilizing the Invariant Relation of Vector Quantization Indices", The Imaging Science Journal, Vol.50, No.4, pp.291-302, 2002).
이 알고리즘은 푸리에(Fourier) 변환과 극좌표계(Log-Polar) 변환을 이용하였다. 푸리에(Fourier) 변환은 이동에 강하고 극좌표계(Log-Polar) 변환은 회전과 축척 변환에 강하다. 그러나, 극좌표계(Log-Polar) 변환은 디지털 이미지에 왜곡을 유발시키기 때문에 이 알고리즘은 직접적인 극좌표계(Log-Polar) 변환을 이용하는 것 대신에 Polar 좌표계의 주파수 범위내에 있는 위치 정보를 이용하였다.
이정수, 김종원, 최종욱의 "기하학적인 변형에 강인한 이미지 워터마킹 연구"(Proceedings of The 30th KISS Spring Conference, pp.440-442, 2003)에서 푸리에(Fourier) 변형을 통해 기하학적인 변형에 강한 워터마킹 시스템을 제안하였다. {-1,1}로 구성되어 있는 본래의 워터마크를 1차원 시퀀스(sequence)의 새로운 워터마크로 바꾸면서 워터마크를 재구성하였다. 워터마크는 다양한 크기로 리사이징을 하고 둥근 형태의 워터마크로 재구성한다. 이렇게 재구성된 워터마크는 푸리에(Fourier) 변환된 이미지에 삽입하게 된다. 이러한 워터마킹 기법은 축척변환(scale), 자르기(cropping), 이동(shift)에 강함을 보여주었다.
DCT(Discrete Cosine Transform)를 이용한 연구에는 다음과 같은 연구 방법이 있었다.
신재욱은 DCT(Discrete Cosine Transform)변환을 이용하여 워터마크를 삽입하는 방법을 제안하였다(신재욱, "엔트로피 기반 영역 분리방법을 이용한 새로운 워터마킹 기법," INHA University, Master paper, 1999). 즉, 이미지 전 영역이 아니라 필요한 영역에만 워터마크를 삽입하는 새로운 알고리즘을 나타냈다. 필요한 영역을 찾기 위해 이미지를 8*8 크기의 이미지로 나누었다. 워터마크는 쓰레숄드(threshold)보다 더 큰 서브리젼(subregion)에 삽입하게 된다. 삽입된 비트(bit)를 추출하기 위해 워터마킹 이미지와 원본 이미지를 이용하였다. 이 방법은 압축과 가우시안 노이즈(Gaussian noise)에 강함을 나타내었다.
DWT(Discrete Wavelet Transform)를 이용한 연구를 살펴보면 다음과 같다
장명환은 웨이블릿(wavelet) 변환 계수의 특징을 이용한 워터마킹 기술을 선보였다(장명환, "웨이블릿 변환계수간의 성질을 이용한 영상 이미지 워터마킹 기법 연구" TAEJON University, Master paper, 2001).
이 방법에서 워터마크는 주파수 범위의 계수로 변화된 이미지의 모든 서브-밴드(sub-band)로 삽입한다. 워터마크는 LL밴드에서 이웃하는 계수쌍들과 다른 밴드에서 계수의 절대값 간의 차이점을 이용하여 삽입하였다. 워터마크 추출과정은 원본 이미지와 워터마킹 이미지 간의 차이값과 절대값을 통해 두 이미지를 비교함으로써 수행하였다. 제안된 방법은 잡음 추가(noise addition), 자르기(cropping), 필터링(filtering), 손실 압축(loss compression)에 있어서 콕스(Cox)의 방법보다 더 나은 결과를 나타내었다.
이러한 주파수 영역에서의 워터마크 삽입 외에도 최근에는 벡터 양자화(vector quantization)를 이용한 방법이 많이 연구되었다. 벡터 양자화(Vector quantization)는 압축시에 많이 사용하는 방법이다.
이러한 방법을 워터마크 삽입과 검출에 응용을 한 것으로, VQ 코드북(codebook)에 있는 코드워드(codewords)를 통해 원본 이미지에 워터마크를 삽입 하고 추출하는 연구가 있었다.
이러한 방법을 통해 여러 공격에 강함을 나타내었다. Hsien-Chu Wu과 Chin-Chen Chang는 코드워드를 다른 그룹으로 분류하고 워터마크를 VQ encoded block에 삽입하는 방법을 제안하였으며 그 실험 결과는 압축에 매우 효과적이였음을 알 수 있었다(Hsien-Chu Wu, Chin-Chen Chang, "A Novel Digital Image Watermarking Scheme based on the Vector Quantization Technique," Computers & Security, pp. 460-471, 2005). 이 외의 다른 연구들도 유사한 방식을 택하고 있으며, 추출 방식은 대게가 워터마크 삽입의 역순으로 이루어진다.
본 발명에서는 GIS에서 많이 사용되는 데이터 형식인 벡터 데이터에 워터마크를 삽입하고 검출하는 알고리즘을 제안하고자 한다.
지리정보체계(Geographic Information System : 이하 GIS)란 컴퓨터 기술을 이용하여 대량의 지리 정보를 좀 더 효율적으로 사용하고 처리하기 위해 관리할 수 있게 하는 시스템이다.
현재 우리나라에서는 국가지리정보체계(NGIS)사업과 관련하여 각 지방단체와 기업들은 지리정보에 관한 다량의 데이터가 구축되어 있으며, 이를 각종 업무에서 활용하고 있다. 하지만, 이러한 활용에 맞추어 저작권 보호에 대한 관심은 많이 부족한 상태로 향후에 저작권 문제가 발생할 경우 큰 문제가 될 수 있다.
GIS에서 지리정보와 연관된 공간객체의 형태와 관련된 정보를 표현하는데 있어서 벡터와 격자의 두 가지 자료구조가 존재한다. 그 중 벡터 데이터는 현실세계의 객체 및 객체와 관련되는 모든 형상이 점, 선, 면을 이용하여 마치 지도상에 나 타나는 것과 같이 표현되는 구조로서, 현실에 가장 가깝게 표현하는 방식이다. 이러한 장점에 따라, 복잡한 현실세계의 묘사가 가능하며, 위상에 관한 정보를 제공하고 그래픽의 정확도가 높아서 GIS에서 다양하게 쓰이고 있다.
앞서 말했듯이, 기존의 워터마킹에 관한 많은 연구들은 대부분이 멀티미디어 분야의 데이터에 관한 기법들이며, 벡터 데이터에 관한 연구들은 미흡한 실정이다.
기존의 방법 중에 이미지 데이터에 관한 워터마킹 기법은 GIS에서 사용되는 래스터 형식의 데이터에는 적용이 가능하지만, 벡터 데이터에는 바로 적용하기에 문제점이 있다. 이는 벡터 데이터가 일반적인 이미지와는 다르게 좌표값을 가지고 표현을 하며, 그 구조 자체가 이미지 데이터 형식과는 매우 다르기 때문이다.
본 발명에서 다루게 될 벡터 데이터는 각 객체들에 대해 좌표값을 가지고 객체를 표현하기 때문에, 이러한 벡터데이터를 구축하고 유지하는데 많이 비용이 소요된다. 따라서 구축에 드는 비용을 고려하면, 벡터 데이터의 저작권을 보호할 수 있는 워터마킹 기법의 연구가 절실한 실정이다.
벡터 데이터는 이미지 데이터와 달리 좌표값을 가진 포인트와 그 포인트를 이어주는 라인으로 구성되어 있기 때문에, 기존의 이미지 데이터에서 연구된 워터마킹 알고리즘을 바로 적용하는데 어려움이 있다.
이러한 어려운 점 때문에 벡터 데이터에 관한 워터마킹 연구가 많이 부족한 실정이다. 하지만 최근에 벡터 데이터의 사용이 매우 증대되고 있으며, 그 중요도로 인해 이에 대한 연구가 필요한 실정이다. 그 중 몇 가지 연구를 살펴보면 다음과 같다.
첫번째 소개하는 연구는 벡터 데이터(vector data)에 대해 푸리에 디스크립터(Fourier descriptor)를 이용한 블라인드(blind) 방식의 워터마킹 알고리즘을 제안하였다. 각 꼭지점(vertex)의 (x,y)좌표를 z = x +iy 의 값으로 변경을 한다. 그리고 이 변형된 값에 DFT를 적용하여 푸리에 디스크립터(Fourier descriptor)를 구한다(V.Solachidis, N.Nikolaidis, I.Pitas, "Fourier Descriptors Watermarking of Vector Graphics Images,"In proc. of XIII Brazilian Symposium on Computer Graphics and Image Processing, Vol.3, pp. 9-12, 2000). 워터마크는 푸리에 디스크립터(Fourier descriptor)를 가지고 삽입할 수 있고, 삽입된 워터마크와 워터마크 푸리에 디스크립터(Fourier descriptor) 간의 상관 관계(correlation)를 가지고 추출할 수 있다. 이 논문은 푸리에 디스크립터가 다양한 공격에 강하다는 것을 보여준다. 관련된 다른 연구에서도 위의 논문과 마찬가지로 복소수(complex value)를 이용하여 워터마크를 삽입하는 알고리즘을 제안하였다(Li Yuanyuan, Xu Luping, "A Blind Watermarking of Vector Graphics Images," ICCIMA 2003과 I. Kitamura, S. Kanai, T. Kishinami, "Copyright Protection of Vector Map using Digital Watermarking Method based on Discrete Fourier Transform").
또 다른 연구에서는 벡터 디지털 맵(vector digital map)을 위한 워터마킹 알고리즘을 제안하였다. 우선 원본 데이터를 세 가지 세부 분할(subdivision) 방법으로 수행한다(Endoh. S, Ohbuchi. R, Ueda. H, "Robust watermarking of vector digital maps", In pro. of IEEE International Conference on Multimedia and Expo, Vol. 1, pp. 577-580, 2002 ). 세부 분할(subdivision)이 된 후에, 워터마크 는 직사각형(rectangle)에 0이나 1의 값으로 삽입된다. 워터마크를 추출하기에 앞서, 워터마크 맵에 적용된 유사 변형(similarity transformation)이 제거된다. 워터마크 삽입중에 사용된 같은 직사각형(rectrangle)이 이러한 전처리과정에 의해 생성된다. 워터마크는 직사각형의 대응되는 쌍들간의 평균 꼭지점(vertex) 좌표값들을 비교하는 알고리즘을 이용하여 추출한다. 본 연구는 여러 공격에 강하다는 것을 실험을 통해 보여주었다.
또 다른 연구에서는 새로운 벡터 맵(vector map) 워터마킹 알고리즘을 제안하였다. 우선, 이미지를 같은 크기의 블록으로 나눈다. 그리고 블록안에 꼭지점(vertex)은 새로운 좌표값으로 바꾼다. 워터마크의 값에 따라 워터마크가 삽입된 지역이 변하게 된다. 삽입된 워터마크를 추출하기 위해 전체 이미지를 나눈 후에, 워터마크는 삼각 지역(triangular region)에서 구할 수 있다. 실험결과는 잡음(noise) 공격에 강하다는 것을 보여주었다(Jong-Uk Choi, Hwan-Il Kang, Kab-Il Kim, "A map data watermarking using the generalized square mask", In proc. of IEEE International Symposium on Industrial Electronics, Vol. 3, pp. 1956-1958, 2001.)
다른 연구에서는 블라인드(blind) 워터마킹 알고리즘을 연구하였다. 즉, 맵에서 추출된 꼭지점들의 좌표값을 복소수(complex value)로 변경한 후 그 값의 DWT의 크기를 이용하여 워터마크를 삽입하고, 워터마크 추출은 그 역순으로 하였다. 워터마크 절차는 워터마크 값과 DWT 계수 사이의 관계를 기반으로 하였기 때문에 원본 데이터의 필요 없이 워터마크를 추출할 수 있다( Li Yuanyuan, Xu Luping, "A Blind Watermarking of Vector Graphics Images," ICCIMA 2003 Proceedings, pp. 424-429, 2003).
다른 방법으로 원본 데이터로부터 폴리라인(polyline)을 순서대로 입력한 후, DFT를 꼭지점들의 순서에 적용한다. 그리고 역 DFT를 적용한 푸리에 계수에 워터마크 데이터를 삽입한다. 마지막으로, 워터마크 된 데이터 V'를 구하기 위한 폴리라인(Polyline)의 꼭지점 좌표를 수정한다. 워터마크 추출은 우선 원본 데이터 V와 V' 사이에 대응되는 순서의 꼭지점들을 삽입한다. 다음으로, V와 V' 사이에 DFT를 적용하고, 마지막으로, 푸리에 계수로부터 워터마크 데이터를 추출한다( I. Kitamura, S. Kanai, T. Kishinami, "Copyright Protection of Vector Map using Digital Watermarking Method based on Discrete Fourier Transform", Geoscience and Remote Sensing Symposium IEEE 2001 International, Vol. 3, pp. 1191-1193, 2001).
하지만 이러한 종래의 연구들은 이미지 데이터 처리에 기반을 둔 방법, 즉 주파수 영역에서의 방법을 사용하기 때문에 그 계산과정이 복잡하고, 워터마크 삽입후 벡터 데이터의 변형에 의해 심각한 데이터의 왜곡에 의한 객체의 공간적 형상이 변하거나 겹쳐질 수 있고, 워터마크 검출과정 역시 복잡하고, 이러한 왜곡을 보정하기 위한 방법에 있어서도 어려운 점이 따르는 문제점이 있다.
본 발명은 상기한 종래 기술의 문제점을 해결하기 위하여 안출된 것으로서, 벡터 데이터의 저작권을 보호하면서, 벡터 데이터의 공간적 특징과 장점을 그대로 간직하여 공간적 왜곡을 방지할 수 있는 방위각을 이용한 벡터 데이터 워터마크 삽입방법 및 검출방법을 제공하는 것을 목적으로 한다.
상기한 과제를 해결하기 위한 본 발명에 따른 벡터 데이터 워터마크 삽입방법은 객체의 벡터 데이터가 저장된 원본 데이터에 워터마크를 삽입하는 벡터 데이터 워터마크 삽입방법에 있어서, 상기 원본 데이터에 포함된 각 객체별 방위각의 합을 계산하는 제 1 단계, 상기 각 객체별 방위각 합의 평균인 평균방위각 및 그에 따른 표준편차를 계산하는 제 2 단계, 워터마크 소유자 식별용 기준방위각을 설정하는 제 3 단계, 상기 기준방위각과 표준편차를 이용하여 워터마크가 삽입될 대상 객체를 선택하는 제 4 단계, 상기 대상 객체를 구성하는 좌표에 워터마크를 삽입하는 제 5 단계를 포함하여 이루어진다.
여기서, 상기 제 4 단계는 상기 기준방위각±표준편차 범위 내의 방위각 합을 가지는 객체를 대상 객체로 선택한다.
또한, 상기 제 3 단계와 제 4 단계 사이에 상기 대상 객체 중 서로 겹쳐지는 객체는 대상 객체에서 제외하는 객체 최적화 단계를 더 포함하여 이루어진다.
또한, 상기 제 5 단계는 상기 대상 객체를 구성하는 좌표를 2 진수로 변환하 는 제 1 과정, 상기 2진수로 변환된 좌표에 워터마크가 삽입될 위치를 결정하는 제 2 과정, 상기 결정된 위치에 워터마크를 삽입하는 제 3 과정을 포함하여 이루어진다.
여기서, 상기 제 3 과정은 기준방위각을 결정한 후 상기 대상 객체의 방위각의 합이 상기 기준방위각과 상기 표준편차의 합 범위 내인 경우 상기 제 2 과정에서 설정된 위치에 1 비트(bit)를 더하고, 상기 대상 객체의 방위각의 합이 상기 기준방위각과 상기 표준편차의 차 범위 내에 들어오는 경우에는 1 비트(bit)를 뺀다.
또한, 상기한 과제를 해결하기 위한 본 발명에 따른 벡터 데이터 워터마크 검출방법은 비교대상 데이터를 원본 데이터와 기하학적 형태가 같아지도록 기하학적 변형을 수행하는 제 1 단계, 상기 비교대상 데이터에 포함된 객체 중 상기 원본 데이터에서 워터마크 삽입 조건을 만족하는 제 1 객체와 대응되는 제 2 객체를 검출하는 제 2 단계, 상기 제 1 객체 및 제 2 객체의 좌표를 2 진수로 변환하여 소정 위치에서 수치를 추출하는 제 3 단계, 상기 제 2 객체에서 추출한 수치에서 상기 제 1 객체에서 추출한 수치를 뺀값이 워터마크와 동일한지 비교 판별하는 제 4 단계를 포함하여 이루어진다.
여기서, 상기 제 2 단계는 상기 원본 데이터에 포함된 각 객체별 방위각의 합을 계산하는 제 1 과정, 상기 방위각 합의 전체 평균인 평균방위각 및 표준편차를 계산하는 제 2 과정, 상기 평균방위각±표준편차 범위 내의 방위각 합을 가지는 제 1 객체를 상기 원본 데이터에서 추출하는 제 3 과정, 상기 비교대상 데이터에서 상기 제 1 객체와 대응되는 제 2 객체를 추출하는 제 4 과정을 포함하여 이루어진 다.
또한, 상기 제 2 단계는 상기 제 1 객체 중 서로 겹쳐지는 객체와 상기 제 2 객체 중 서로 겹쳐지는 객체는 대상 객체에서 제외하는 제 4 과정을 더 포함하여 이루어진다.
상기와 같이 구성되는 본 발명에 따른 방위각을 이용한 벡터 데이터 워터마크 삽입방법 및 검출방법은 방위각을 이용하여 객체 전체에 워터마크를 삽입하기 때문에, 워터마크를 삽입한 후에 객체의 모양 변화가 없어 객체 데이터의 왜곡현상이 없고, 객체의 겹쳐짐과 같은 공간관계를 비교하여 워터마크를 삽입함으로써 워터마크가 삽입이 된 후 공간관계가 변형되는 것을 방지하는 효과가 있다. 또한, 워터마크 삽입시 공간상의 객체가 서로 겹쳐지는 경우를 방지하는 효과가 있으며, 벡터 데이터에 대한 다양한 공격에도 워터마크의 검출률이 높고, 벡터 데이터의 특징과 장점을 잘 살릴 수가 있는 효과가 있다.
본 발명은 벡터 데이터에 워터마크를 삽입하거나 검출하는 방법에 관한 것이다. 이를 위해 먼저 워터마크에 관하여 간략하게 살펴본다.
워터마크라는 용어의 유래는 여러 가지 이야기가 있다. 고대 이집트에서 파피루스 종이를 만들 때 파피루스를 물에 풀어서 섬유질을 부드럽게 하고 압착기를 통해 압력을 가해 종이를 만들면서 물을 빼내는데, 이 때 물을 빼기 위한 압력에 의해 파피루스 종이에 압착기의 자국이 남게된 것을 워터마크라고 한다. 또한 중세시절에는 수도원이 종이를 가장 많이 사용했으나 제지업자에 따라 품질 차이가 나타나자 제지업자는 자신들이 생산한 종이라는 것을 나타내기 위해 종이에 마크를 넣음으로써 워터마크를 활용하기도 했다. 가장 근래의 것으로는 우리가 갖고 있는 지폐를 빛을 통해야만 볼 수 있는 사람의 형상이 있는데, 이 사람의 문양을 인쇄할 때는 종이가 젖은 상태에서 인쇄하고 말린 후 양면에 지폐의 무늬를 인쇄하는 방식을 취한다. 지폐가 젖은 상태에서 인쇄하는 마크라는 의미에서도 워터마크라는 용어가 사용되고 있다. 이러한 예들은 아날로그적인 사용 예인 반면에 디지털 데이터에 정보를 삽입하는 기술적인 시도가 디지털 워터마킹이라고 할 수 있다.
디지털 워터마킹은 오디오, 비디오, 이미지, 그리고 텍스트 등의 멀티미디어 컨텐츠에 저작권 정보 등 소유권을 주장하고자 하는 특정의 데이터를 사람의 육안이나 청각으로는 구별할 수 없게 삽입하는 기술이라고 정의를 내릴 수 있다. 만약, 유통 과정에서 소유권의 분쟁 등 원 소유자를 확인해야 하는 경우 이를 다시 검색, 추출하여 소유권, 저작권 등의 권리를 행사할 수 있는 근거를 마련할 수 있도록 해준다.
디지털 워터마킹은 불법적인 복제나 배포로부터 소유권을 증명할 수 있고, 워터마크를 제거하려는 공격 등으로부터 그 기능을 효과적으로 발휘할 수 있게 하기 위해 다음과 같은 다양한 특성 및 요구조건을 만족해야 한다.
1) 충실도(fidelity)
원본과 대상 작품의 워터마크가 입력된 버전 간의 눈에 보이는 유사성을 말 한다. 다른 말로 하자면, 워터마크가 입력되어 있지 않은 작품과 입력되어 있는 작품 사이의 눈에 보이는 유사성이라고 할 수 있다.
2) 워터마크 키(watermark key)
특정한 워터마크 신호는 워터마크 키와 관련된다. 이러한 키는 워터마크를 생성하고 삽입하고 검출하는데 사용된다.
3) 데이터 패이로드(data payload)
한 개의 작품 내에 적용된 워터마크의 비트 수를 말한다. 워터마크의 비트 수는 응용분야에 따라 종속적이다. 복제 방지의 목적으로는 한 비트면 충분하다. 일반적으로 지적 재산권 보호를 위해 사용하려면 ISBN(International Standard Book Numbering)은 약 10자리 십진수, ISRC(International Standard Recording Code)는 12자리의 영문과 숫자 조합을 사용하므로 60비트에서 70비트 정도의 정보를 원본 데이터인 이미지나 비디오 프레임, 오디오 클립에 삽입할 수 있어야 한다고 한다.
4) 강인성(rubustness)
다양한 종류의 디지털 조작은 디지털 상품의 품질을 향상시키거나 크기를 압축하거나 워터마크를 제거하기 위해 디지털 상품에 수행된다. 이러한 데이터에 대한 의도적이거나 의도적이지 않은 공격에 대해 원본에 숨겨진 워터마크의 손실이 생겨서는 안 된다.
5) 보안성(security)
워터마크의 보안성은 암호화에서의 보안성과 같은 개념으로 설명될 수 있다. 워터마크의 삽입과 검출 알고리즘이 알려져도 워터마크의 존재를 검출하거나 제거하는데 도움이 되지 않는 매우 안전하고 보안성을 가져야 한다. 즉, 권한 없는 삭제나 입력, 검출을 방지할 수 있어야 한다.
6) 원본 사용여부(blind)
일부 응용 예에서는 원본 데이터를 갖고 워터마크를 검출하는 방식을 사용할 수 있으나 기술적으로 다양한 분야에 응용하기 위해서는 원본 없이 검출하는 방식이 필요하다.
디지털 워터마킹은 입력된 작품과 분리되지 않는다는 특징이 있다. 따라서 삽입된 워터마크는 작품과 함께 변환이 되므로 워터마크를 따로 알아챌 수 없다는 특징이 있다. 이러한 특징을 가지고 있는 디지털 워터마킹은 다양한 분야에서 응용된다. 우선 컨텐츠의 불법사용으로 인한 분쟁시에 소유권을 증명하거나 저작권을 보호할 수 있는데 주로 사용된다. 워터마크 검출기를 사용하지 못한다면 워터마크를 지운다는 것은 매우 어려운 문제가 된다.
따라서 컨텐츠의 소유권을 증명하는데 있어 디지털 워터마킹은 사용될 수 있다. 그리고 데이터 인증을 위해 원본 인증 분야에서도 사용이 되고 있다. 이러한 인증 분야는 범죄 조사나 혹은 금융분야에서 많이 사용되고 있다. 디지털 워터마킹은 거래 추적에서도 사용된다.
예를 들어, 디지털 데이터에 합법적인 판매를 의미하는 워터마크를 삽입할 수 있다. 이런 경우, 만약 작품이 심하게 훼손되거나 승인 받지 않은 데이터가 유 통되고 있다면, 누구에게 데이터의 조작이나 불법적인 배포에 책임이 있는지 확인할 수 있다.
복사 방지에도 디지털 워터마킹은 사용된다. 불법적인 배포나 복제를 막기 위해 암호화와 같은 방법으로 디지털 워터마크를 사용할 수 있다. 워터마크는 콘텐츠 자체에 입력이 되기 때문에 콘텐츠를 사용하는 하드웨어나 소프트웨어가 워터마크 검출기에 맞춰져 있다면 복사 방지에 사용될 수 있다.
이상과 같이 살펴본 바와 같이 디지털 워터마킹은 다양한 분야에서 널리 응용될 수 있다. 마찬가지로 벡터 데이터(vector data)에 디지털 워터마킹 기법을 응용하는 것도 좋은 응용분야의 예가 된다. 특히 GIS에서 벡터 데이터는 매우 많이 사용되는 데이터 포맷으로, 다양한 곳에서 사용되고 있다. 벡터 데이터를 구축하고 만드는데 고비용이 들기 때문에 이에 대한 저작권이나 복사 방지를 위한 대책이 필요하다. 특히, 최근에는 네비게이션에서 벡터 데이터가 많이 사용되고 있는바 이러한 데이터에 대한 저작권 보호는 절실하다고 할 수 있다.
이를 위해 본 발명은 방위각을 이용하여 벡터 데이터 워터마크 삽입방법 및 검출방법을 제안한다.
본 발명에서는 기존에 많이 연구되었던 방식인 주파수 영역에서의 방법이 아니라 공간 영역에서의 방법으로 워터마크를 삽입하는 알고리즘을 제안한다. 주파수 영역에서의 방법이 보다 강인하다고 알려져 있으나, 주파수 영역에서의 계수 변환은 심각한 데이터의 왜곡 현상을 일으키거나 품질 저하를 일으킬 수 있는 경우가 있기 때문이다. 또한, 워터마크 삽입으로 인해 공간관계의 변화가 나타났을 때 이 를 보정하기 위한 방법에 있어서도 어려운 점이 따른다. 따라서 공간 영역에서 워터마크를 삽입하면서 데이터의 왜곡 현상을 줄이고, 워터마크의 강인함을 만족시키는 방법을 제안하였다.
도 1은 본 발명에 따른 벡터 데이터 워터마크 삽입방법이 도시된 순서도이다.
도 1을 참조하면, 본 발명에 따른 벡터 데이터 워터마크 삽입방법은 객체의 벡터 데이터 정보가 저장된 원본 데이터에 워터마크를 삽입하는데, 먼저, 상기 객체의 평균방위각과 표준편차를 이용하여 워터마크가 삽입될 대상 객체를 선택한다.
먼저, 워터마크가 삽입될 대상 객체의 선택 방법에 대해 구체적으로 설명하겠다.
먼저, 원본 데이터에 포함된 각 객체별 방위각의 합(S)을 계산한다(S110).
방위각이란 자오선상의 북점을 기준으로 수평면상에서 동쪽으로 돌아가며 잰 각으로, 최대값은 360°가 된다. 연구에서는 이 방위각을 이용하여 워터마크를 삽입할 객체들을 선택하고, 워터마크 키로서 사용된다. 방위각은 객체의 특성을 나타낼 수 있는 고유의 값으로 표현될 수 있기 때문에, 워터마크의 삽입과 검출 과정에서 매우 중요하게 사용될 수 있다.
도 2는 임의의 객체에서 방위각이 도시된 도이다.
도 2를 참조하면, 여기서 a, b, c, d가 방위각이다. 각 꼭지점에서 12시 방향을 기준으로 이웃하는 선분까지의 각을 시계방향으로 잰 각을 말한다.
각 객체에 있어서 상기와 같은 방위각의 합(S=a+b+c+d)을 구하고, 건물 레이 어(건물 객체의 윤곽 벡터 데이터가 저장된 원본 데이터)에서 상기 계산한 각 객체별 방위각 합의 평균인 평균방위각(M)과 그에 따른 표준편차(σ)를 구한다(S120).
다음으로 워터마크 소유자 식별용 기준방위각(A)을 정한다(S130).
상기 기준방위각(A)과 평균방위각(M) 레벨의 값이므로, 상기 두 값은 상기 객체의 방위각의 합의 수준의 값이다. 따라서, 0°에서 360°사이의 값이 아니라 360°보다 큰 값이 될 수도 있다.
다음으로, 상기 기준방위각(A)과 상기 표준편차(σ)를 이용하여 워터마크를 삽입할 객체를 선택한다(S140).
이때 소유자에 의해 지정되는 기준방위각(A)과 표준편차(σ)는 워터마크 키로 사용이 되며 워터마크를 검출하는데 사용하게 된다.
본 발명의 일 실시예에서는 건물 레이어의 평균방위각(M)±1σ의 범위에 객체들의 방위각 합(S)이 포함되는 객체들을 선택하였다. 즉, 기준방위각(A)의 값을 평균방위각(M)으로 설정하였다.
이렇게 객체를 선택하는 경우 최적화가 필요하다. 왜냐하면, 워터마크를 삽입하게 되면 객체들의 공간관계가 변화되는 경우가 생긴다. 예를 들어 워터마크가 삽입이 되어, 건물과 건물이 서로 겹쳐지는 경우가 생길 수도 있다. 따라서 이러한 공간관계의 왜곡을 줄이기 위해, 본 발명에서는 객체들을 구성하고 있는 선분들의 교차 테스트를 통하여, 워터마크를 삽입할 객체들을 최종적으로 선택하게 된다.
도 3은 본 발명에 따른 워터마크 삽입방법에서 객체 선택의 최적화 과정이 도시된 순서도이다.
객체 선택의 최적화 과정인 교차 테스트는 두 선분이 교차하는 경우에는 반환 값 1을 할당하고, 두 선분이 떨어져 있는 경우에는 반환 값 2를 할당하며, 한 선분의 끝점이 다른 선분에 포함되는 경우에는 반환 값 3으로 할당한 후(S141), 워터마크를 시범적으로 삽입하고(S142) 워터마크가 삽입이 되기 전과 워터마크가 삽입이 된 후에 반환 값을 검사(S143)한 후 반환 값이 달라진 선분을 포함한 객체에는 워터마크를 삽입하지 않도록 워터마크 삽입 대상에서 제외하였다(S144, S145).
또한, 좌표를 공통으로 소유하고 있는 객체가 있는 경우에도 워터마크를 삽입하기 위한 객체에서 제외하였다.
워터마크 키를 이용하여 선택된 객체들과 교차 테스트를 거친 객체들을 이용하여 최종적으로 워터마크를 삽입할 객체를 선택하게 된다.
본 발명의 일 실시예로 워터마크는 소유자를 표시하는 것이 아니라 워터마크 키에 의해 1bit의 변화를 주는 값이 된다. 벡터 데이터는 좌표로 구성되어 있는 것으로, 각 좌표들은 비트 단위로 저장이 되기 때문에, 본 발명에서는 그 좌표들을 이진수로 변환시켜 워터마크를 삽입한다(S150).
도 4는 본 발명에 따른 방위각을 이용한 벡터 데이터 워터마크 삽입방법에 있어서, 워터마크 삽입과정이 구체적으로 도시된 순서도이다.
먼저, 워터마크를 삽입하기 위해 우선 워터마크를 삽입하기 위해 선택된 객체들의 좌표를 이진수로 변환시킨다(S151).
다음으로 워터마크를 삽입하는 위치를 결정한다(S152). 워터마크를 삽입하여 데이터의 왜곡현상을 줄이기 위해서는 소수점 이하의 값에 변화를 주어야 한다. 따라서 소유자는 이진수로 변한 좌표에서 수치지도의 정확도에 대한 기대오차에 벗어나지 않게 소수점 이하 자리에 워터마크를 삽입할 위치(P)를 결정한다. 여기서 결정하게 되는 위치(P)는 앞에서 워터마크를 삽입할 객체를 선택할 때 사용된 방위각과 표준편차와 함께 워터마크 키로 사용하게 된다.
워터마크 키에 의해 삽입할 객체와 위치가 선정이 되면 워터마크를 삽입하는데(S153), 소유자가 지정한 기준방위각(A)에 +표준편차(σ) 범위 내에 들어오는 객체의 좌표에는 P번째 위치에 1bit를 더하고, -표준편차(σ) 범위 내에 들어오는 객체의 좌표에는 P번째 위치에 1bit를 뺀다. 본 발명의 일 실시예로 소수 첫째 자리에 워터마크를 삽입한다.
도 4는 본 발명에서 워터마크 삽입할 위치에 워터마크가 삽입되는 일례가 도시된 도이다.
도 4를 참조하면, 2진수로 변환된 좌표가 속하는 객체의 방위각 합이 기준방위각(A)+표준편차(σ)범위 내이면 소수 첫째자리에 +1비트를 더하고, 2진수로 변환된 좌표가 속하는 객체의 방위각 합이 기준방위각(A)-표준편차(σ)범위 내이면 소수 첫째자리에 1비트를 뺀다,
워터마크를 삽입하는 절차는 정리하면 다음과 같다.
1) 원본 데이터에서 각 객체들의 방위각 합(S)을 구한다.
2) 원본 데이터 전체 객체들의 방위각 합(S)의 평균인 평균 방위각(M)을 구한다.
3) 평균 방위각(M)에 따른 표준편차(σ)를 구한다.
4) 기준방위각(A)± 표준편차(σ)의 방위각 범위에 들어오는 객체들을 선택한다.
5) 선택된 객체들의 좌표값을 2진수로 변환한다.
6) 기준방위각(A)+표준편차에 들어오는 객체는 소수점 이하의 자리에 1 bit를 삽입하고, 기준방위각(A)-표준편차에 들어오는 객체는 소수점 이하의 자리에 1 bit를 뺀다.
다음으로 도 5를 참조하여, 본 발명에 따른 방위각을 이용한 벡터 데이터 워터마크 검출방법을 설명한다.
도 5는 본 발명에 따른 방위각을 이용한 벡터 데이터 워터마크 검출방법이 도시된 순서도이다.
디지털 워터마킹에서 원본 데이터와 워터마크된 데이터, 공격을 당한 워터마크된 데이터를 이용하여 워터마크를 검출하는 방법이 가장 이상적인 방법이 된다. 이러한 방법은 각각의 데이터에서 추출한 객체들의 차이점을 비교하여 소유권을 주장할 수 있는 워터마크임을 인식할 수 있게 해준다. 하지만 본 발명에서는 원본 데이터와 워터마크 삽입 후 공격을 당한 데이터만을 가지고 삽입한 워터마크를 검출한다.
도 5를 참조하면, 그 첫 번째 단계로 먼저, 워터마크 검출을 하기에 앞서 우선 공격당한 데이터(비교대상 데이터)를 원본 데이터에 맞도록 기하학적인 변형을 시켜준다(S310).
이는 시각적으로 동일한 구조를 갖도록 하기 위한 것으로 비교대상 데이터를 회전 또는 이동을 통해 동일한 각도 및 형상을 가지도록 기하학적으로 변형을 시켜주는 것이다.
그리고 워터마크를 검출하기 위해서는 원본 데이터에서 워터마크를 삽입하는 과정에서의 사용한 워터마크 키(기준방위각, 표준편차, 삽입위치)를 이용한다. 즉, 원본 데이터에서 워터마크 키를 이용하여 워터마크가 삽입된 또는 삽입될 조건을 만족하는 객체(제 1 객체)들을 추출하고, 추출된 객체들과 같은 객체(제 2 객체)들을 공격당한 데이터(비교대상 데이터)에서 추출하여(S320) 워터마크를 검출한다(S330).
추출된 워크마크가 삽입시 사용한 워터마크와 동일한지 비교 판별한다(S340).
여기서, 상기 제 1 객체 및 제 2 객체를 검출하는 과정은 워터마크 키를 이용하여 워터마크를 삽입할 때 객체를 선택하는 방법을 사용하여 대상을 검출한다.
본 발명에서는 워터마크가 삽입된 데이터를 사용하지 않고 원본 데이터를 사용하여 검출하므로, 원본 데이터에 포함된 각 객체별 방위각의 합을 계산한 후, 상기 방위각의 합의 평균인 평균방위각을 구하고, 그에 따른 표준편차를 계산한다.
그 후 상기 원본 데이터에 워터마크 삽입시 설정했던 기준방위각 ± 상기 표준편차 범위 내의 방위각 합을 가지는 객체를 제 1 객체로 추출한다.
이 제 1 객체와 동일한 객체를 비교대상 데이터에서 추출하면 된다.
이 경우에도 객체 최적화 과정을 거쳐 겹쳐지거나 중첩되는 객체를 배제할 수 있다.
이렇게 검출된 워터마크가 삽입시 사용했던 워터마크인 +1bit 또는 -1bit라면 소유자가 동일한 것으로 판별할 수 있다.
도 6은 단순화 공격을 통해 좌표가 삭제된 경우 워터마크를 추출하는 방법이 도시된 도이다.
도 6을 참조하면, 공격당한 비교 대상 데이터의 객체 좌표에서 원본 데이터 객체 좌표를 빼면 워터마크가 나온다. 도 6과 같이 좌표가 삭제된 경우에는 검출율이 떨어질 수 있다.
일반적으로 워터마크를 삽입하였을 때, 원본 데이터에 왜곡현상이 나타나게 된다. 벡터 데이터의 장점은 래스터 데이터보다 현실세계를 보다 현실적으로 표현하며 더 정확한 위치 정보를 갖는다는 것이다. 따라서 이러한 장점을 살리기 위해서는 왜곡현상을 가급적 줄여야 한다.
게다가 워터마크를 삽입하였을 때, 객체들간의 공간관계가 틀어진다면 그것은 매우 큰 문제가 된다. 기존의 많은 연구들은 주파수 영역(frequency domain)에서 워터마크를 삽입하는 방법으로 워터마크를 삽입하게 되었을 경우, 공간관계가 변한 것을 바로잡기가 쉽지 않지만, 공간 영역(spatial domain)에서 워터마크를 삽입하게 되면 워터마크를 직접 삽입하는 것이므로, 조절하기가 상대적으로 쉽다.
따라서 본 발명에서는 이러한 점들을 고려하여 워터마크를 삽입하였으며, 이 에 따라 워터마크의 검출율과 데이터의 왜곡현상을 판단하였다.
상기 서술한 바와 같이, 워터마크를 삽입하게 되면, 데이터의 왜곡현상은 당연히 일어나게 된다. 따라서 왜곡현상이 데이터를 사용하는 데 있어 지장이 없도록 하여야 한다. 이를 위해 본 발명에서는 원본 데이터와 워터마킹된 데이터 간의 RMSE(Root Mean Square Error)를 통해 데이터의 왜곡현상을 살펴보았다.
Figure 112007068257964-pat00001
Figure 112007068257964-pat00002
Figure 112007068257964-pat00003
여기서, 수학식 3에서 ei 는 에러를 말하며, y'i는 워터마크가 삽입된 후의 좌표값이고, yi는 원본 데이터의 좌표값이다.
RMSE 값을 통해 워터마크가 삽입이 되었을 경우, 전체 데이터가 얼마나 위치 오차를 가지게 되는지를 알 수 있다.
워터마크를 삽입하고 검출하는데 과정에 있어서, 소유자가 삽입한 워터마크가 다양한 공격에 얼마나 살아남을 수 있는지 검출률을 살펴볼 필요가 있다. 이를 위해 연구에서는 CR(Correspondence Ratio)을 이용하였다.
이는 워터마크가 삽입된 좌표의 개수와 검출된 좌표의 개수의 비율을 나타낸다. CR 값은 1에 가까울수록 검출률이 높다고 할 수 있다.
Figure 112007068257964-pat00004
본 발명에서는 검출률을 검토하기 위해 국토지리정보원에서 샘플로 제공하고 있는 NBI 데이터(1:1,000)에서 건물 레이어를 이용하였다.
먼저 본 발명에서 제안한 워터마크 삽입방법에 따라 우선 워터마크를 삽입하기 위한 객체를 선택해야 한다. 워터마크를 제거하기 위한 공격에 강인하기 위해서, 워터마크를 삽입할 객체는 소유자가 앞서 설명한 기준방위각을 이용하여 지정할 수 있도록 하였다.
우선, 객체를 선택하기 위해 건물 레이어에 있는 각 객체의 방위각의 합을 구하고, 이들 방위각의 합의 평균과 표준편차를 구하였다. 다음으로, 데이터의 평 균 방위각과 표준편차를 이용하여, 기준방위각(편의상 평균방위각으로 설정)의 표준편차 범위에 들어오는 객체들을 워터마크를 삽입하기 위한 객체들로 선택하였다.
여기서 정한 평균방위각과 표준편차는 첫 번째 워터마크 키가 된다. 이렇게 선택된 객체들이 워터마크를 삽입할 후보객체들이 된다. 볼 실시예에서 사용된 평균 방위각은 638이며, 표준편차는 342이다. 이 워터마크 키를 통해 선택된 워터마크 후보 객체들은 총 128개이다.
도 7은 워터마크 삽입 후 공간관계의 변화의 일례가 도시된 도이다.
도 7을 참조하면, 워터마크를 삽입하게 되면, 원본 데이터의 변화가 일어나게 된다. 본 발명에서는 객체들의 모양은 변하지 않게 되나, 워터마크가 삽입되었을 경우, 워터마크가 삽입된 만큼의 위치변화를 겪게 된다.
따라서 워터마크의 삽입 전후를 살펴보아 공간관계가 변한 경우 워터마크를 다시 제거하는 과정을 더한다.
원본 데이터의 객체에 대해 두 선분이 교차하는 경우, 두 선분이 교차하지 않는 경우, 한 선분의 끝점이 다른 선분에 포함되는 경우에 대해 각각의 반환 값을 소유하고 있으며, 워터마크 삽입 후에 이 반환 값이 변하게 되면 워터마크를 삭제하게 된다.
특히 두 개 이상의 객체가 공통된 좌표를 공유하고 있는 경우에는 워터마크를 처음부터 삽입하지 않도록 하였다.
최종적으로 남은 객체들의 좌표를 이진수로 변환시킨다. 수치지도의 허용오차는 1:1,000의 경우 ±0.7m이므로 워터마크를 삽입하였을 때 이러한 허용오차를 벗어나지 않도록 하여야 한다.
좌표를 이진수로 변환시켰을 때, 소수 첫째 자리의 변화는 좌표의 0.5m의 변화를 나타내므로 그 이하 자리에서 워터마크 삽입을 해야 한다. 이러한 위치 범위하에서 소유자는 워터마크를 삽입할 위치를 정할 수 있다.
이렇게 워터마크를 삽입할 위치는 앞에서 정한 방위각과 표준편차에 이어 두 번째 워터마크 키가 된다. 실험에서는 소수 첫째 자리에 워터마크를 삽입하여 실험을 하였다. 즉, 평균방위각 +1σ에 들어오는 객체들의 좌표에서 소수점 첫째 자리의 값에 1bit를 더하였고, 평균방위각 -1σ에 들어오는 객체들의 좌표들은 소수점 첫째 자리의 값에 1bit를 뺏다.
워터마크를 추출하기에 앞서 우선은 공격당한 데이터를 원본 데이터에 맞춰 기하학적인 변형을 해준다. 기하학적인 변형이 끝난 후 워터마크 검출과정을 진행해나간다. 즉, 워터마크 키에 의해 워터마크가 삽입된 객체를 원본에서 추출을 하고, 같은 객체를 공격당한 데이터에서 추출을 한다.
그리고 추출된 객체들의 좌표를 이진수로 변환을 하여 서로 간의 비교를 통해 워터마크가 삽입이 되었음을 알 수 있다. 연구에서는 워터마크 키가 평균방위각과 표준편차가 되며, 워터마크 삽입 위치에 관한 워터마크 키는 소수 첫째 자리가 된다.
실험 결과를 살펴보면, 원점 이동과 회전 공격, 좌표 추가의 공격에는 워터마크 검출률이 100%를 나타내었으며, 나타난 검출한 워터마크는 다음 표 1과 같다. 추출한 워터마크는 도 8과 같이 나타난다. 도 8은 본 발명에 의한 방위각을 이용한 벡터 데이터 워터마크 검출방법에 의해 검출된 워터마크의 일례가 도시된 도이다.
아래의 표 1은 실험에서 사용한 건물 레이어 데이터가 나타난 표이다.
실험에 사용된 데이터
기본 정보 다양한 공격후의 CR값
평균 방위각 638 단순화 공격후의 CR 0.80
표준 편차 512 회전 공격후의 CR 1.00
객체 수 169 좌표 추가 공격후의 CR 1.00
좌표 수 1346 좌표 삭제 공격후의 CR 0.99
M+1σ(M-1σ) 범위안에 객체 수 47(114) 원점 이동 공격후의 CR 1.00
M+1σ(M-1σ) 범위안에 좌표 수 510(623) Clipping 공격후의 CR 0.19
RMSE 0.29
표 1에서 살펴보면, 공격 후의 워터마크 검출률의 차이를 알 수 있다. 100% 워터마크를 검출하는 경우는 좌표의 삭제되지 않는 경우의 공격에서는 100% 워터마크를 검출할 수 있었다. 하지만, 좌표가 제거되는 공격인 단순화나 클리핑(clipping), 좌표의 삭제 같은 공격에는 워터마크 검출률이 떨어짐을 알 수 있다.
이는 좌표가 제거되면 당연히 워터마크가 삽입된 좌표도 같이 삭제가 되기 때문이다. 특히 단순화나 좌표의 삭제 같이 좌표를 많이 제거되지 않는 공격에는 워터마크가 많이 검출되었으나, 클리핑(clipping)의 경우는 도 9와 같이 전체 데이터에서 극히 일부를 잘라내기 한 경우라서 워터마크의 검출률이 많이 떨어짐을 알 수 있다. 도 9는 원본 데이터와 클리핑 공격을 위해 잘라낸 지역이 도시된 도이다.
본 발명에서는 워터마크를 객체 전체에 삽입하기 때문에, 워터마크가 삽입이 된 후에 워터마크가 삽입된 만큼 객체의 이동이 발생한다. 하지만 워터마크가 삽입이 된 후에 RMSE의 값이 0.29이므로 이는 수치지도의 위치 허용오차 범위안에 들어오게 되고, 시각적으로 큰 차이가 없다. 이는 워터마크가 삽입되기 전의 원본 데이터의 모습이 도시된 도 10과 워터마크 삽입 후의 모습이 도시된 도 11을 비교하면 워터마크 삽입 전후로 시각적인 차이가 거의 없음을 알 수 있다. 도 11에서 워터마크가 삽입된 객체는 붉은색으로 표시된 부분이다. 따라서 벡터 데이터를 사용하는데 있어서 문제점이 발생하지 않는다.
상기 표 1을 통해 본 발명의 실험 결과를 보면 좌표가 삭제되지 않는 한 워터마크의 검출률은 매우 높다는 것을 알 수 있다. 좌표가 삭제되는 경우는 실질적인 좌표의 값만 삭제되는 것이 아니라 그 좌표에 삽입한 워터마크까지 삭제가 되는 경우이므로 워터마크를 검출할 수 없다. 따라서 단순화나 클리핑(clipping)같은 공격에서는 좌표가 제거되었다는 것을 고려하여 CR 값을 분석하고, 도 8처럼 워터마크를 직접 검출하는 것을 통해 소유자를 식별할 수 있다.
본 발명의 가장 큰 특징은 워터마크를 특정 좌표에 삽입하는 것이 아니라, 방위각을 이용하여 객체 전체에 워터마크를 삽입하기 때문에, 워터마크를 삽입한 후에 객체의 모양 변화가 없다.
기존 연구에서는 객체의 모양 변화로 인해 데이터의 왜곡현상이 나타나는 경우가 발생하지만, 제안한 방법은 모양이 변하지 않으므로, 벡터 데이터의 특징과 장점을 잘 살릴 수가 있다.
또한, 기존 연구와 달리 공간관계를 비교하여, 워터마크를 삽입함으로써, 워터마크가 삽입이 된 후, 공간관계가 변하는 경우를 방지하였다. 기존 연구에서는 워터마크가 삽입이 되면서, 공간상의 객체가 서로 겹쳐지는 경우가 발생하는 경우가 나타났으나, 본 발명에서는 이러한 문제점을 해결하여, 벡터 데이터의 장점을 살릴 수가 있다.
이상과 같이 본 발명에 의한 방위각을 이용한 벡터 데이터 워터마크 삽입방법 및 검출방법을 예시된 도면을 참조로 설명하였으나, 본 명세서에 개시된 실시예와 도면에 의해 본 발명은 한정되지 않고, 기술사상이 보호되는 범위 이내에서 응용될 수 있다.
도 1은 본 발명에 따른 벡터 데이터 워터마크 삽입방법이 도시된 순서도,
도 2는 임의의 객체에서 방위각이 도시된 도,
도 3은 본 발명에 따른 워터마크 삽입방법에서 객체 선택의 최적화 과정이 도시된 순서도,
도 4는 본 발명에서 워터마크 삽입할 위치에 워터마크가 삽입되는 일례가 도시된 도,
도 5는 본 발명에 따른 방위각을 이용한 벡터 데이터 워터마크 검출방법이 도시된 순서도,
도 6은 단순화 공격을 통해 좌표가 삭제된 경우 워터마크를 추출하는 방법이 도시된 도,
도 7은 워터마크 삽입 후 공간관계의 변화의 일례가 도시된 도,
도 8은 본 발명에 의한 방위각을 이용한 벡터 데이터 워터마크 검출방법에 의해 검출된 워터마크의 일례가 도시된 도,
도 9는 원본 데이터와 클리핑 공격을 위해 잘라낸 지역이 도시된 도,
도 10은 워터마크가 삽입되기 전의 원본 데이터의 모습이 도시된 도,
도 11은 본 발명에 따른 벡터 데이터 워터마크 삽입방법에 의해 워터마크가 삽입된 후의 모습이 도시된 도이다.

Claims (17)

  1. 벡터 형식의 원본 데이터에 워터마크를 삽입하는 벡터 데이터 워터마크 삽입방법에 있어서,
    상기 원본 데이터에 포함된 각 객체별 방위각의 합을 계산하는 제 1 단계;
    상기 각 객체별 방위각 합의 평균인 평균방위각 및 상기 평균방위각에 따른 표준편차를 계산하는 제 2 단계;
    워터마크 소유자 식별용 기준방위각을 설정하는 제 3 단계;
    상기 기준방위각과 표준편차를 이용하여 워터마크가 삽입될 대상 객체를 선택하는 제 4 단계;
    상기 대상 객체를 구성하는 좌표에 워터마크를 삽입하는 제 5 단계를 포함하여 이루어지는 방위각을 이용한 벡터 데이터 워터마크 삽입방법.
  2. 청구항 1 에 있어서,
    상기 제 4 단계는 상기 각 객체별 방위각의 합이 상기 기준방위각에서 상기 표준편차를 뺀 값부터 상기 기준방위각에서 상기 표준편차를 더한 값의 범위 내인 경우 대상 객체로 선택하는 것을 특징으로 하는 방위각을 이용한 벡터 데이터 워터마크 삽입방법.
  3. 청구항 1 에 있어서,
    상기 제 3 단계와 제 4 단계 사이에 상기 대상 객체 중 서로 겹쳐지는 객체는 대상 객체에서 제외하는 객체 최적화 단계를 더 포함하여 이루어지는 방위각을 이용한 벡터 데이터 워터마크 삽입방법.
  4. 청구항 3 에 있어서,
    상기 객체 최적화 단계는 서로 다른 두 객체의 선분이 교차하는 경우에는 반환값 1을 할당하고, 서로 다른 객체의 두 선분이 떨어져 있는 경우 반환값 2를 할당하며, 어느 한 객체의 선분의 끝점이 다른 객체의 선분에 포함되는 경우 반환값 3을 할당하여, 워터마크가 삽입되기 전과 워터마크가 삽입된 후 반환값이 달라지는 선분을 포함한 객체를 상기 대상 객체에서 제외하는 것을 특징으로 하는 방위각을 이용한 벡터 데이터 워터마크 삽입방법.
  5. 청구항 1 에 있어서,
    상기 제 5 단계는 상기 대상 객체를 구성하는 좌표를 2 진수로 변환하는 제 1 과정;
    상기 제 1과정을 통하여 2진수로 변환된 좌표에 워터마크가 삽입될 위치를 결정하는 제 2 과정;
    상기 제 2과정을 통하여 결정된 위치에 워터마크를 삽입하는 제 3 과정을 포함하여 이루어지는 방위각을 이용한 벡터 데이터 워터마크 삽입방법.
  6. 청구항 5 에 있어서,
    상기 제 2 과정은 상기 제 1과정을 통하여 2진수로 변환된 좌표의 소수점 첫째 자리에서 소수점 다섯째 자리의 범위 중에서 선택되는 어느 하나의 자리를 워터마크가 삽입될 위치로 결정하는 것을 특징으로 하는 방위각을 이용한 벡터 데이터 워터마크 삽입방법.
  7. 청구항 6 에 있어서,
    상기 제 2 과정은 상기 제 1과정을 통하여 2진수로 변환된 좌표의 소수점 첫째 자리를 워터마크가 삽입될 위치로 결정하는 것을 특징으로 하는 방위각을 이용한 벡터 데이터 워터마크 삽입방법.
  8. 청구항 5 에 있어서,
    상기 제 3 과정은 상기 대상 객체의 방위각의 합이 상기 기준방위각과 상기 표준편차의 합(+) 범위 내인 경우 상기 제 2 과정에서 설정된 위치에 1 비트(bit)를 더하고, 상기 대상 객체의 방위각의 합이 상기 기준방위각과 상기 표준편차의 차(-) 범위 내에 들어오는 경우에는 1 비트(bit)를 빼는 것을 특징으로 하는 방위 각을 이용한 벡터 데이터 워터마크 삽입방법.
  9. 청구항 1 에 있어서,
    상기 기준방위각은 타 워터마크와 소유자를 식별하기 위해 설정되는 방위각인 것을 특징으로 하는 방위각을 이용한 벡터 데이터 워터마크 삽입방법.
  10. 비교대상 데이터를 원본 데이터와 기하학적 형태가 같아지도록 기하학적 변형을 수행하는 제 1 단계;
    상기 비교대상 데이터에 포함된 객체 중 상기 원본 데이터에서 워터마크 삽입 조건을 만족하는 제 1 객체와 대응되는 제 2 객체를 검출하는 제 2 단계;
    상기 제 1 객체 및 제 2 객체의 좌표를 2 진수로 변환하고, 2진수로 변환된 좌표의 소수점 첫째 자리에서 소수점 다섯째 자리의 범위 중에서 선택되는 어느 하나의 자리에서 수치를 추출하는 제 3 단계;
    상기 제 2 객체에서 추출한 수치에서 상기 제 1 객체에서 추출한 수치를 뺀값이 워터마크와 동일한지 비교 판별하는 제 4 단계를 포함하여 이루어지는 방위각을 이용한 벡터 데이터 워터마크 검출방법.
  11. 청구항 10 에 있어서,
    상기 제 1 단계는 상기 비교대상 데이터를 회전 또는 이동시켜 원본 데이터와 기하학적 형태가 같아지도록 하는 것을 특징으로 하는 방위각을 이용한 벡터 데이터 워터마크 검출방법.
  12. 청구항 11 에 있어서,
    상기 제 2 단계는 상기 원본 데이터에 포함된 각 객체별 방위각의 합을 계산하는 제 1 과정;
    상기 방위각 합의 전체 평균인 평균방위각 및 표준편차를 계산하는 제 2 과정;
    상기 원본 데이터에 워터마크 삽입시 사용했던 기준방위각에서 상기 표준편차를 뺀 값부터 상기 기준방위각에서 상기 표준편차를 더한 값의 범위 내의 방위각 합을 가지는 제 1 객체를 상기 원본 데이터에서 추출하는 제 3 과정;
    상기 비교대상 데이터에서 상기 제 1 객체와 대응되는 제 2 객체를 추출하는 제 4 과정을 포함하여 이루어지는 방위각을 이용한 벡터 데이터 워터마크 검출방법.
  13. 청구항 12 에 있어서,
    상기 제 2 단계는 상기 제 1 객체 중 서로 겹쳐지는 객체와 상기 제 2 객체 중 서로 겹쳐지는 객체는 대상 객체에서 제외하는 제 4 과정을 더 포함하여 이루어지는 방위각을 이용한 벡터 데이터 워터마크 검출방법.
  14. 삭제
  15. 청구항 10에 있어서,
    상기 제 3단계는 상기 제 1객체 및 제 2객체의 좌표를 2진수로 변환하고, 2진수로 변환된 좌표의 소수점 첫째 자리에서 수치를 추출하는 것을 특징으로 하는 방위각을 이용한 벡터 데이터 워터마크 검출방법.
  16. 청구항 10 에 있어서,
    상기 제 4 단계의 워터마크는 +1 비트(bit) 또는 -1 비트(bit)인 것을 특징으로 하는 방위각을 이용한 벡터 데이터 워터마크 검출방법.
  17. 청구항 12에 있어서,
    상기 기준방위각은 타 워터마크와 소유자를 식별하기 위해 사용자에 의해 임의로 설정된 방위각인 것을 특징으로 하는 방위각을 이용한 벡터 데이터 워터마크 검출방법.
KR1020070095773A 2007-09-20 2007-09-20 방위각을 이용한 벡터 데이터 워터마크 삽입방법 및검출방법 KR100944488B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070095773A KR100944488B1 (ko) 2007-09-20 2007-09-20 방위각을 이용한 벡터 데이터 워터마크 삽입방법 및검출방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070095773A KR100944488B1 (ko) 2007-09-20 2007-09-20 방위각을 이용한 벡터 데이터 워터마크 삽입방법 및검출방법

Publications (2)

Publication Number Publication Date
KR20090030454A KR20090030454A (ko) 2009-03-25
KR100944488B1 true KR100944488B1 (ko) 2010-03-03

Family

ID=40696748

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070095773A KR100944488B1 (ko) 2007-09-20 2007-09-20 방위각을 이용한 벡터 데이터 워터마크 삽입방법 및검출방법

Country Status (1)

Country Link
KR (1) KR100944488B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101905403B1 (ko) * 2017-02-15 2018-10-08 동명대학교산학협력단 벡터 콘텐츠 인증 보안을 위한 다중 스케일 곡률기반 벡터 데이터 해싱기술
KR102157764B1 (ko) * 2019-10-24 2020-09-18 상명대학교산학협력단 히스토그램을 이용한 CityGML 파일 워터마킹 방법, 워터마크 추출 방법 및 워터마킹 시스템
CN112711644B (zh) * 2019-10-24 2024-06-04 北京四维图新科技股份有限公司 地图数据的电子签名处理方法、装置、系统及存储介质
CN114897659B (zh) * 2022-05-09 2023-12-29 南京师范大学 一种矢量地理数据零水印生成方法及零水印信息检测方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030055653A (ko) * 2001-12-27 2003-07-04 한국전자통신연구원 템플레이트를 포함하는 워터마크 삽입 및 검출 시스템
JP3737702B2 (ja) 2001-02-05 2006-01-25 松下電器産業株式会社 電子透かしに関する透かし情報埋込装置及び透かし情報抽出装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3737702B2 (ja) 2001-02-05 2006-01-25 松下電器産業株式会社 電子透かしに関する透かし情報埋込装置及び透かし情報抽出装置
KR20030055653A (ko) * 2001-12-27 2003-07-04 한국전자통신연구원 템플레이트를 포함하는 워터마크 삽입 및 검출 시스템

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
전자공학회(1995, 4쪽)
전자공학회(2001, 8쪽)

Also Published As

Publication number Publication date
KR20090030454A (ko) 2009-03-25

Similar Documents

Publication Publication Date Title
Tang et al. A feature-based robust digital image watermarking scheme
US7817817B2 (en) Method for concealing data in curves of an image
Bas et al. Geometrically invariant watermarking using feature points
Wang et al. A new digital image watermarking algorithm resilient to desynchronization attacks
Wang et al. A high capacity reversible data hiding method for 2D vector maps based on virtual coordinates
CN111968025A (zh) 基于Bandelet-DCT医学图像鲁棒零水印方法
Huo et al. Alterable-capacity fragile watermarking scheme with restoration capability
Liu et al. Robust blind image watermarking based on chaotic mixtures
Kim et al. Region-based tampering detection and recovery using homogeneity analysis in quality-sensitive imaging
CN111968027A (zh) 基于surf和dct特征的鲁棒彩色图像零水印方法
Roy et al. Watermarking through image geometry change tracking
Kim Robust Vector Digital Watermarking Using Angles and a Random Table.
Dai et al. A novel hybrid reversible-zero watermarking scheme to protect medical image
KR100944488B1 (ko) 방위각을 이용한 벡터 데이터 워터마크 삽입방법 및검출방법
CN110211020B (zh) 基于swt-dft的图像水印嵌入与提取方法
Hussan et al. Hash-based image watermarking technique for tamper detection and localization
Zope-Chaudhari et al. Copyright protection of vector data using vector watermark
Liu et al. Adaptive feature calculation and diagonal mapping for successive recovery of tampered regions
Wang et al. RST invariant fragile watermarking for 2D vector map authentication
Chang et al. Watermarking 2D/3D graphics for copyright protection
Niu et al. GIS watermarking: hiding data in 2D vector maps
Vaishnavi et al. Fragile watermarking scheme based on wavelet edge features
Abbas et al. Digital vector map watermarking: Applications, techniques and attacks
CN114630130A (zh) 一种基于深度学习的换脸视频溯源方法及系统
Al-Otum et al. Image watermarking for tamper detection and content recovery applications based on a preservative bi-level moment approach with shuffling

Legal Events

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

Payment date: 20130123

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131217

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20141204

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160113

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20161220

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee