朱靜嫻,陸 南,馮金金
(江蘇科技大學 電信學院,江蘇 鎮(zhèn)江 212001)
Android手機圖像版權(quán)保護系統(tǒng)的設計與實現(xiàn)
朱靜嫻,陸 南,馮金金
(江蘇科技大學 電信學院,江蘇 鎮(zhèn)江212001)
針對互聯(lián)網(wǎng)和無線通信的發(fā)展使得手機圖像被廣泛的傳播,帶來了手機圖像很容易被復制和修改這類問題,文中采用一種工具來證明圖像的所有權(quán)。以Android手機獲取的彩色圖像為例,添加一個可見或者不可見的水印在手機圖像中,可見圖像數(shù)字水印是將水印信息直接嵌入或覆蓋在圖像中,不可見圖像數(shù)字水印是采用數(shù)字水印算法將特定的水印信息嵌入到圖像中。通過實驗表明,得出該系統(tǒng)能夠達到保護手機圖像版權(quán)的效果,而且操作便捷,具有可行性和實用性,可以在一定程度上抵抗手機應用軟件(QQ、微博等)帶來的圖像壓縮和縮放攻擊等。
Android;手機圖像;水印信息;量化嵌入
近年來,隨著移動互聯(lián)網(wǎng)技術的飛速發(fā)展,帶有攝像頭的智能手機已經(jīng)成為一種流行的電子產(chǎn)品。越來越多的人喜歡用它來記錄日常生活,并通過QQ、微博、微信等傳輸即時分享這些照片和信息。這些促使人們聚焦關注安全問題,如怎樣保證圖像的所有權(quán),怎樣對這些圖像進行認證,同時在保護圖像版權(quán)的時候還不影響美觀。對此經(jīng)典的解決方案是在圖像中嵌入生產(chǎn)商相關的水印信息,該技術稱之為數(shù)字水印[1]。自Google公司推出Android操作系統(tǒng)以來,基于Android平臺開發(fā)的各種應用層出不窮,其中Android手機上圖像版權(quán)保護的問題也逐漸引起人們的重視。因此文中設計出一種適用于Android手機平臺的彩色圖像版權(quán)保護的方案[2]。
數(shù)字水印技術是一種信息隱藏技術,基本思想是在數(shù)字圖像、音頻和視頻等數(shù)字產(chǎn)品中嵌入秘密信息,以便保護數(shù)字產(chǎn)品的版權(quán)、證實產(chǎn)品的真實可靠性、跟蹤盜版行為或者提供產(chǎn)品的附加信息。其中秘密信息可以是版權(quán)標識、用戶序列號或是產(chǎn)品的相關信息。數(shù)字水印的分類方法有很多種,從外觀上可分為可見水印和不可見水印。
可見水印是指知覺上可見的水印,就像插入或者覆蓋在圖像上的標識,與可視紙張中的水印相似;不可見水印直觀上不可察覺,采用特定的數(shù)字水印算法將水印嵌入到圖像中,所有者可以從作品中提取出水印,從而證明該作品的所有權(quán)或者完整性等。文中采用的是離散小波變換、離散余弦變換和奇異值分解相結(jié)合的數(shù)字水印嵌入算法[3-4],同時考慮到信息真實性的驗證是當前的重點關注,將終端唯一性(IMEI(InternationalMobileEquipmentIdentity)、IMSI(International Mobile Subscriber Identity))、GPS位置信息作為水印信息來提高數(shù)字水印的真實性。
在數(shù)字圖像處理中,一般使用二維DCT變換。對于一幅大小為M×N的圖像f(x,y)(x=0,1,2,…,M-1;y=0,1,2,…,N-1),二維離散余弦變換的正變換為:
在圖像分析中,當圖像進行多分辨率一級小波分解后,會得到信號特征的低頻分量、垂直分量、水平分量和對角線分量。若接著對得到的低頻分量用同樣的方法再分解可以得到下一集分辨率更小的子圖。小波系數(shù)的低頻部分占據(jù)圖像的大部分能量,最接近原始圖像,不易受到攻擊,高頻子帶主要是圖像的邊緣和紋理信息,在該子帶中嵌入水印,水印算法的魯棒性較差,收到攻擊后水印信息容易丟失,因此,在低頻子帶嵌入水印信息可以提高水印的魯棒性。
SVD是一種將矩陣對角化的計算方法,是用于信號處理分析的有效工具,近年來在圖像數(shù)字水印中應用廣泛。設A為m×n階矩陣,則存在正交矩陣Um×m和Vn×n,使得A=U×S× VT,其中S表示對角矩陣,對角線元素即為奇異值:S=diag(σ1,σ2,…,σr),r為矩陣A的秩,該值與矩陣A的奇異值數(shù)量相等,即r=rank(A)。SVD分解后得到的奇異值矩陣S,奇異值在S的對角線上,非負且按降序排列。S具有穩(wěn)定性強的特點,能經(jīng)受多種信號處理的攻擊。
本系統(tǒng)是供用戶在手機上使用,用來實現(xiàn)手機圖像的版權(quán)保護。中心思想是:首先通過手機攝像頭或者本地圖庫獲取手機圖像并對其進行預處理,然后獲取手機的IMEI、IMSI和手機或終端用戶所處的GPS位置信息,分別對其進行編碼后作為水印信息,然后采用數(shù)字水印算法將水印信息嵌入到圖像中,得到嵌入水印信息的彩色圖像,最后通過傳輸,接收方可通過檢測水印信息獲得傳輸者的手機信息和GPS位置信息。主要包括5個模塊,圖像獲取模塊、圖像保存模塊、生成水印信息模塊、水印嵌入模塊和水印提取模塊。系統(tǒng)的主要流程框架如圖1所示。
圖1 系統(tǒng)主要流程框架
2.1圖像獲取模塊
通過該模塊可以得到待保護的載體圖像。系統(tǒng)提供兩種圖像獲取方式:①直接調(diào)用手機攝像頭拍攝;②調(diào)用本地圖庫。文獻[5]中指出了彩色圖像經(jīng)過傳輸工具(QQ、微信等)傳輸后圖像的會自動進行一定尺寸的縮放,針對該特點采用Android系統(tǒng)中圖像處理類Bitmap類和BitmapFactory類進行圖像的讀取和解碼,再壓縮到指定的大小。
2.2生成水印信息模塊
該模塊中主要包括水印信息的獲取和編碼。文中采用的是一種特殊的水印信息,即IMEI、IMSI和GPS位置信息。IMEI是由15位0~9的數(shù)字組成,國際移動設備身份碼的縮寫,標志了GSM和UMTS網(wǎng)絡中的唯一手機,通常被打印在手機電池上面,或在手機撥號界面輸入按*#06#,即可查詢這一串數(shù)字。IMSI也是15位的數(shù)字,標志了GSM和UMTS網(wǎng)絡中的唯一用戶,它存儲在手機的SIM卡里,可以通過手機發(fā)送到網(wǎng)絡上。GPS位置信息即經(jīng)度和緯度信息,采用特定的定位技術來獲取移動手機或終端用戶的位置信息。通過代碼獲取IMEI和IMSI后,將其采用BCD編碼[6],為確保編碼長度的統(tǒng)一,用0000代表IMEI,1111代表IMSI,添加在編碼的首端。最后得到的水印信息形式為01的序列串,長度為L=64。
GPS位置信息編碼過程與IMEI/IMSI類似,假設當前的手機位置為:Latitude=+32.202 454,Longitude=+119.472 871。Latitude(緯度)的范圍是[-90,+90],Longitude(經(jīng)度)的范圍是[-180,+180]。為確保編碼長度的統(tǒng)一,將其保留到小數(shù)點后6位,同時經(jīng)度小數(shù)點前的位數(shù)包含1位符號位和3位整數(shù)位,緯度小數(shù)點前的位數(shù)包含1位符號位和2位整數(shù)位。編碼過程如下:先將不足位補0,就上述例子而言,經(jīng)度和緯度不變;然后乘以10^6后將其變成整數(shù),除符號位之外,將每一位進行BCD編碼,同時用“0000”代表正數(shù),“0000”代表負數(shù);最后得到01的序列串,長度為L=76。
2.3水印嵌入模塊
在本模塊中主要包括:顏色空間的轉(zhuǎn)換、DWT變換、DCT變換、Zigzag變換[7]、量化嵌入[8]和SVD變換等。嵌入水印的步驟如下:
1)調(diào)用手機的攝像頭或者本地圖庫獲取原始圖像,并將其縮放到固定尺寸,大小為M×N,設圖像為I;
2)將圖像I從RGB顏色空間轉(zhuǎn)換到Y(jié)CbCr顏色空間,提取亮度分量Y,并進行二級小波分解,得到4個矩陣LL、HL、LH和HH,大小均為(M/2)×(N/2),取出低頻分量LL,對其進行水印嵌入;
3)將低頻分量LL分成8×8的子塊,用B表示。在子塊中隨機選取L(由水印長度決定)個塊進行DCT變換,同時將所選取的位置作為密鑰k保存,將DCT系數(shù)用zigzag變換順序排列到4個象限:B1,B2,B3,B4。對B1(直流分量)進行SVD分解,B1=USVT;
4)獲取IMEI、IMSI或GPS位置信息并轉(zhuǎn)換成一維矩陣,用W(i)表示。分別取出每個塊對應的對角矩陣Si的第1個值Si(1,1)進行量化嵌入:
其中Δ為量化步長,本文Δ=64;
5)將嵌入水印的S矩陣和原U、V矩陣進行逆SVD變換、反zigzag變換和IDCT變換,得到嵌入水印的塊LL*。再與細節(jié)分量進行二級IDWT變換,最后得到嵌入水印后的亮度通道Y;
6)Y與原來的Cb,Cr分量結(jié)合,并按原來的公式轉(zhuǎn)換到RGB空間,得到含水印的手機彩色圖像。
2.4水印提取模塊
將嵌入水印的手機圖像通過QQ傳輸后,用I*表示,提取算法如下:
1)將I*從RGB轉(zhuǎn)換到Y(jié)CbCr顏色空間,取出Y分量并進行二級DWT變換;
2)取出低頻分量并分成8×8的子塊,根據(jù)保存的密鑰k選取水印嵌入塊的位置,對水印嵌入塊進行DCT分解,得到DC分量并進行SVD分解得到奇異值矩陣;
3)從最大奇異值S″i(1,1)得到水印信息:
4)將得到的水印信息序列Wi進行逆編碼,得到手機信息和GPS位置信息。
2.5圖像保存模塊
圖像保存模塊可以對用戶采集到的圖像、水印信息嵌入后的圖像和水印提取后的水印信息進行保存,以便進行實驗結(jié)果的處理。
3.1可見數(shù)字水印仿真結(jié)果
通常水印為文本或者是一個簡單的商標,標識多媒體數(shù)據(jù)的所有者,例如一個電視頻道的標識可視為可見水印,這種類型的數(shù)字水印經(jīng)常使用在圖片和視頻上。文中將時間和日期作為水印嵌入到原始圖像中。原始圖像如圖2所示,嵌入可見水印如圖3所示。
圖2 原始圖像
圖3 載水印圖像
3.2不可見數(shù)字水印仿真結(jié)果
在Eclipse平臺上仿真實現(xiàn)圖像數(shù)字水印系統(tǒng)的功能后,將其封裝打包成APK并安裝到Android手機上,并運行該水印系統(tǒng)的應用程序。本次實驗采用的華為手機G750-T01。水印系統(tǒng)的登陸和注冊界面如圖4、5所示,注冊并輸入用戶賬號和密碼進行登錄;圖6所示為用戶登陸后系統(tǒng)的主界面,包含拍照、圖庫、水印嵌入、水印提取和保存信息五個按鈕。
圖4 登陸界面
圖5 注冊界面
圖6 主界面
點擊拍照或圖庫按鈕獲取待保護的圖像,將其顯示在主界面上,結(jié)果如圖7所示。點擊水印植入按鈕后,跳轉(zhuǎn)到設置水印信息的界面,其中包含獲取GPS信息、IMEI信息和IMSI信息等。通過點擊這些按鈕獲取GPS位置信息和IMEI/IMSI信息,如圖8、9所示。
圖7 獲取待保護的圖像
圖8 水印信息的界面
圖9 水印信息的顯示
點擊嵌入水印按鈕后,將主界面上的圖像進行水印嵌入并顯示在主界面上,最后點擊保存信息按鈕,將其保存在手機文件中,如圖10所示,在內(nèi)部存儲/DCIM/Camera中可獲取嵌入水印的圖像,比較圖像大小可以看出嵌入水印的圖像明顯比原先的圖像大,同時在外觀上沒有太大的差異。用戶點擊水印提取按鈕后,則會將原先的水印信息提取出來,如圖11、12所示。
圖10 水印嵌入
圖11 水印提取
圖12 顯示提取的水印
比較圖7和10,可以看出嵌入水印信息后,在外觀上看沒有太大的差異,不影響美觀。同時在手機內(nèi)部存儲/DCIM/ Camera中可獲取嵌入水印的圖像,從圖像大小的改變,也可看出水印信息的嵌入。從圖12中看出,提取的水印也是清晰可見的。綜上從實驗結(jié)果看出,該系統(tǒng)中的算法滿足盲檢測,不可見性,和移動終端的運算速度較快等特點。
3.3實驗結(jié)果分析
從嵌入可見和不可見的水印可以看出,可見數(shù)字水印雖然操作簡單,耗時短,但是影響原始圖像的外觀,相比較可見數(shù)字水印,不可見數(shù)字水印耗時長,但是不影響外觀,還可以提取出嵌入的水印,達到保護版權(quán)的效果。
為了解決手機圖像的版權(quán)保護的問題,文中針對Android手機,采用DWT—DCT—SVD數(shù)字水印算法將編碼后的IMEI/IMSI/GPS位置信息嵌入到手機圖像中,在外觀上沒有太大差異,不影響美觀。再通過傳輸工具(QQ等)發(fā)布到網(wǎng)站上,接收方在分享手機圖像的同時,通過水印提取,在保護圖像的版權(quán)的同時也可以方便的了解到發(fā)送方的手機信息和位置信息。
[1]許文麗,王命宇,馬君.數(shù)字水印技術及應用[M].北京:電子工業(yè)出版社,2013.
[2]Chen Y H,Huang H C.A Copyright Information Embedding SystemforAndroidPlatform[C].Dalian:International Conference on Intelligent information Hiding and Multimedia Signal Processing,2011:21-24.
[3]王奔.基于DWT—DCT—SVD的圖像數(shù)字水印算法[D].北京:北京郵電大學,2010.
[4]Navas K A,Ajay M C,Lekshmi M,et al.DWT-DCT-SVD Based Watermarking[C].Bangalore:International Conference on Communication System Software and Middleware and Workshops,2008:271-274.
[5]尚南南,李黎,李偉.基于IPHONE手機圖像的數(shù)字水印算法[J].杭州電子科技大學學報,2014,34(3):70-72.
[6]Jeedella J,Al-Ahmad H.An algorithm for watermarking mobile phone colour images using BCH code[J].IEEE Gcc Conference&Exhibition,2011:303-306.
[7]劉艮,蔣天發(fā),蔣巍.一種基于Zigzag變換的彩色圖像置亂算法[J].計算機工程與科學,2013,35(5):107-111.
[8]丁志中,梁秋娟.一種基于關系和量化的強魯棒性盲水印算法[J].中國圖象圖形學報,2010,15(1):31-36.
[9]宋杰.Android智能手機上彩色圖像的版權(quán)保護[D].武漢:華中師范大學,2014.
Design and implementation of copyright protection system based on Android mobile phone images
ZHU Jing-xian,LU Nan,F(xiàn)ENG Jin-jin
(School of Electronic and Information Engineering,Jiangsu University of Science and Technology,Zhenjiang 212001,China)
The development of the Internet and wireless communication makes mobile phone images are widely spread,and the phone image is easy to copy and modify,etc.It is therefore important to have tools on the mobile devices that can prove the ownership of the pictures and to use them before publishing the images.Take the color images of Android mobile as an example,and add a visible or invisible watermark to phone images.The visible image digital watermarking is to embed the watermark information directly or override in the image.The invisible digital watermarking is used a digital image watermarking algorithm to embed the specific watermark in the image.The experimental results show that the proposed scheme can achieve the effect of the mobile phone image copyright protection,and the operation is convenient,has the feasibility and practicability.It can survive in a certain compression attack under the specific environment of mobile phone,and the attack is brought by the transport of the image through QQ,micro-blog etc.
Android;phone images;watermark information;quantization embedding
TN911
A
1674-6236(2016)21-0184-04
2015-11-07稿件編號:201511074
朱靜嫻(1991—),女,江蘇南通人,碩士研究生。研究方向:智能信息處理與系統(tǒng),信息隱藏。