Document

Damage-less watermark extraction
using non-linear feature extraction
scheme trained on frequency
domain
~Information hiding
-meta data hiding- ~
Graduate School of Media and Governance
Kensuke Naoe
Agenda

今までの研究の話
 電子透かしとは
 ニューラルネットワークについて
 修士時代の研究

今やっている(やってみた)研究
 発見したこと
Background

コンピュータやインターネットの急激な普及に伴い,マルチメディアコンテ
ンツを容易に作成,配布できるようになった.

注目されてきているのが,ディジタルコンテンツの販売.



電子透かしの創世記



iPod,Gyao,いまだとYouTubeとか?
コピーコントロール技術は敬遠される
NapstarやGnutellaなどのP2Pファイル共有システムが問題
コピーコントロールとよく勘違いされる.
国内でもWinMXやWinnyが流行り,著作権という問題が注目されている.
電子透かしの用途
不正な複製,改変,配布
 正当なユーザへの所有権,著作者の真贋,ト
ラッキング

 暗号(PKI,電子署名)や電子透かしを組み合わ
せたセキュリティ強度の高い著作権処理システム
電子透かしとは

「人間の知覚(視覚・聴覚)の特性を利用し,
静止画,動画像,オーディオなどのディジタル
コンテンツに対して,コンテンツ自体とは別の
情報を,人間に知覚出来ないように埋め込む
技術をいう」
電子透かし技術に関する調査報告書
平成13年3月
社団法人 電子情報技術産業協会
暗号技術との類似性

暗号
 コンテンツが暗号化されていることは明らかに認
識できる.また,コンテンツを秘匿したい.

電子透かし
 コンテンツは出来るだけ影響されずにそのままの
状態.コンテンツとは別の情報が埋めこめられて
いることが認識できない.埋め込むデータを秘匿
したい.
デジタル署名との類似性

別の情報をコンテンツに添付する
 デジタル署名

コンテンツに添付するのでファイルサイズ(ビット数)が
増加し,署名部分だけを削除することが容易
 メタデータ

多くの場合がデジタル署名と似た性質がある
 電子透かし

ファイルサイズは増加せず,透かしだけの除去も困難
電子透かしに関する勘違い

電子透かし技術は暗号・デジタル署名と併用
できる
 デジタル署名を電子透かし技術で埋め込む
 電子透かしの入ったコンテンツを暗号化して配布

電子透かしはそれらの技術を補完する技術
であって,代替するものではない.
電子透かしの特徴

コンテンツの種類によって埋め込み・抽出手法が異
なる.
 画像なのか,動画なのか,音声なのか
 ファイルサイズや利用条件

利用形態に応じて,柔軟に対応出来たほうがいい
 複数の可変要素を持たせる
 アルゴリズムで対応させる

数学的理論によって強度を保証出来る暗号と違う
 アルゴリズムを独自の非公開のものにすることが多い
インフォメーションハイディングとは

コンテンツに対してデータを秘匿的に埋め込
む技術
 Robust
watermark
 Fragile watermark
 Semi-fragile watermark
 Steganography

電子あぶり出し,深層暗号
別のカテゴライズとして

不可視・高耐性
 著作権保護

不可視・低耐性
 改ざん防止

可視・非可逆
 所有権者表示

可視・可逆
 コンテンツ配布
電子透かしの要件
コンテンツ自体への埋め込み
 耐性
 コンテンツ品質
 埋め込み情報容量

電子透かし応用例

著作権主張モデル

不正利用の心理的抑制
 不正利用の監視
 著作権明示,サンプル画像の配
布





原本性確認モデル





写真画像の改ざん検知
デジタル画像の改ざん位置検出
Webページの真正性確認
情報の復元






メディアリンクモデル


商品の販売促進
現代版ステガノグラフィー
付属情報付加モデル
撮影情報付加
説明付加
字幕付加
吹き替え音声付加
CM付加
立体情報付加
議事録発言付加
個人情報付加
機器制御モデル
 コピープロテクション
 有害コンテンツのフィルタリング
 メタ電子透かし
埋め込み抽出技術の概要
デジタル画像
 動画像
 音声
 文章

埋め込む情報の形態
数字,文字コード,バイナリデータ
 図形
 識別のためのパターンやマーク

電子透かしの仕組み(画像での例)
直江健介
透かし情報
透かしの復元に
必要となる
復号鍵の生成
透かし情報
復号鍵がないと
透かしを復元できない
透かしの復元
透かしの埋め込み
元の画像
直江健介
電子透かしが
埋め込まれた画像
(不可視)
電子透かしが
埋め込まれた
画像が改変
著作権管理に用いるためには、透かし情報がいかなる処理を施しても頑健にコンテンツに存在し続ける必要がある
=ロバスト性
直江の研究

Damage-less watermark extraction using
 コンテンツに対して埋め込みをまったく行わない

Non-linear feature extraction scheme
 埋め込まないとなると,ある程度特徴を認識しないと
 画像は多次元かつ複雑な要素を持っているので,分類す
るには非線形分離

Trained on frequency domain
 ニューラルによる学習で実現しよう
どこにニューラルの入る余地があるか

周波数変換後の画像の、特定領域の特徴情報を入力とし、透かし情報
を応答とするパターン認識問題として捉える
学習による分類器(鍵)の生成
 パターン分類(認識)による透かし情報の復元


画像の特徴情報は複雑かつ似た性質を持つ可能性があるため、非線形
分離が必要

階層型ニューラルネットワークの多層パーセプトロンによるパターン分離

バックプロパゲーション学習



教師付き学習,パターン分離や関数近似が得意
三層以上は非線形分離が可能
Watermarkとsteganographyの両方になりうる
XOR問題をbackpropagation
学習で解いてみる
3層パーセプトロン
出力層



中間層
(隠れ層)
3層構造
フィードフォワード型
k
w jk
ニューロンの入出力関数
j
 シグモイド関数
wij
i

Backpropagation 学習
x1
入力層
xi
xM
シグモイド関数


多層パーセプトロンのニューロン入出力関数
シグモイド(sigmoid) = S字
y
x
1
1  exp x 
y
ネットワークの計算

ニューロンの入力値
 前層のニューロン出力と結合係数の積和
N
x j   wij yi
yj
i 1
j
xj
w1j
wij
y1
yi
wNj
yN
パーセプトロンの動作
1
y
 0.89
1  exp 2.12
0.88
2.0
1.0
0.89
1.0
y
1
 0.67
1  exp 0.71
-1.0
1 x  1.0  0.88  2.0  01.62
0.67
y
 0.88
y


0
.
18
1  exp 2.02 .12
1  exp1.50
2.0
-1.0
x  1.0  0.89  1.0  0.18
0.5
0.62
0.18  0.71
1 x  1.0  0.88  1.0  0.62
y

 0.62
 結合係数(Wij)の値によって最終出力が変わる
1  exp 0.51.50
-1.0


どのように結合係数を決めてやるか?
→ 学習させる
Backpropagation 学習
多層パーセプトロンの学習則
 教師付き学習
 教師信号との誤差を逆方向に伝播して結合
係数を修正する

1.0
0.9
2.0
入力
信号
0.5
1.0
1.3
-1.0
-0.8
2.0
1.9
-1.0
-0.9
-1.0
-0.8
出力
信号
0.67
教師
信号
1.0
誤差
提案手法(修士論文)

フィルタ処理に特化したロバスト性の高い電
子透かしの実現を最大の目標
 JPEG圧縮やフィルタ処理に対応するために特化
した
提案手法の手順
埋め込み処理
1.
画像の周波数変換処理
2.
鍵穴ブロックと鍵穴の位置情報埋め込みブロックの選定
3.
鍵穴の位置情報の埋め込み
4.
鍵の生成
5.
画像の再構成
復元処理
1. 画像の周波数変換処理
2. 鍵穴の位置情報の取り出し
3. 埋め込み処理4.で作った復号鍵を用いて透かし情報の復元
提案手法の手順(埋め込み処理)
1.画像の周波数変換処理(変換、量子化)
2.鍵穴ブロックと
鍵穴の位置情報埋め込みブロックの選定
鍵穴の位置情報
B
3.鍵穴の位置情報の
埋め込み
4.鍵穴ブロックから透かし情報を認識する
分類器の生成
A
透
か
し
情
報
学習後の
結合係数群
鍵穴の位置情報を
埋め込んだ画素の
位置情報
5.画像へ再構成(量子化>逆量子化、変換>逆変換)
鍵穴ブロックから鍵を生成(1)
8
8x64
A
8x64
拡大
8
B
1. 鍵穴ブロックAに着目
鍵穴ブロックA
鍵穴ブロックから鍵を生成(2)
1.鍵穴ブロックに着目し
対角線の係数をBack
Propagationへの入力とする
2.二値化した透かし情報をBack
Propagationの教師信号とする
(教師信号=透かし情報
例:10110101)
3.学習後の結合係数と鍵穴の
鍵穴ブロックA
位置情報を復号鍵とする
階層型ニューラルネットワーク
透かし情報
01
10
1
1
0
1
・鍵穴の対角線の係数を入力、透かし情報を教師信号とし
学習を行う。学習が収束した時の2対の結合係数U,Vを鍵として
外部で保持する
提案手法(復元処理)
1.画像の周波数変換処理(変換、量子化)
2.鍵穴の位置情報の取り出し
鍵穴の位置情報を
埋め込んだ画素の
位置情報
3.鍵穴ブロックの特徴情報を適応信号処理の
入力とし、復号鍵である結合係数を用いて
出力応答として透かし情報を得る
透
か
し
情
報
復号鍵である
2対の結合係数群
復元処理
鍵穴の位置情報を
埋め込んだ画素の
位置情報
透
か
し
情
報
A
B
周波数変換後の画像
ブロックA
復号鍵である
2対の結合係数群
(ブロック分割)
1.
2.
3.
画像を周波数変換し、ブロックに分割する
復号に必要となる「鍵穴ブロックA」の位置情報を持つ「ブロックBの位置」に
関する位置情報を復号者は知っているためブロックAを探索可能
「鍵穴ブロックA」の対角線上の係数を適応信号処理の入力信号とし、復号
鍵である結合係数群を用いて出力することで透かし情報得ることが出来る
評価実験
実験1 透かし情報の認識率
 実験2 フィルタに対する耐性評価

実験1:透かし情報の認識率
透かし情報(ビット列):10110101
の復号実験
認識率
認識率
1
0.25
0.8
0.2
0.6
0.15
0.4
0.1
0.2
0.05
0
0
1
2
3
4
5
6
7
8
図1.透かし情報の入っているブ
ロックから復号(1byteのデータ)
正しく復号できた
bit
1
2
3
4
5
6
7
8
図2.まったく関係ないブロック
から復号(1byteのデータ)
正しく復号できない
bit
実験2:フィルタに対する耐性評価
透かし情報の入った画像にデジタルフィルタ
をかけた後に透かし情報を復号できるか
認識率
図1.フィルタ処理前の画像
1
0.8
0.6
0.4
0.2
0
図2.フィルタ処理後の画像
1 2 3 4 5 6 7 8
1byteのデータを抽出
bit
ハイパスフィルター処理後の認識率
問題点

識別率が悪かった



フィルタ処理を施さない段階においても,正しい入力に対する出力の
認識率は隔たりがあり,いいブロックを選択する必要があった
すくなくとも正しい入力のときは必ず正しい出力を得たい
学習の収束が遅かった

何を持って学習が収束したかの判断が難しかった
現在の研究

全く埋め込みをせず,特に特別な前処理をしないで学
習,識別を目標とする
 識別したい個数分を確実に分類できる分類器の生成を目的

ネットワークの構造をどう設計するかが鍵
 学習の収束問題


バイアスニューロンを導入することで解決
各種フィルタ処理に対する耐性がどの程度なのかを
検討する
実験要件

識別したい識別子は32個(とりあえず)
 5bitで実現できる

それぞれ入力は特徴情報の8画素の値(入力は8ユニット)





出力が5ユニット x 1個のネットワークに32種の学習
出力が1ユニット x 5個のネットワークに32種の学習
出力が32ユニット x 5個のネットワーク 1回学習
512*512の画像には8*8pixelのサブブロックが
4096個
ブロック全体の反応としてはノイズが好ましい
5bitとしての例:








1
2
3
4
5
6
7
8
a
b
c
d
e
f
g
h








9
10
11
12
13
14
15
16
i
j
k
l
m
n
o
p








17
18
19
20
21
22
23
24
q
r
s
t
u
v
w
x








25
26
27
28
29
30
31
32
y
z
.
,
~
@
/
個々のブロックの出力イメージとして
8x64
31 25 12 6 14 17 32
11 15 29 22 18 27 7 13
19 24 2 28 11 21 19 1
30 31 3 16 8 2 26 3
5 5 23 27 6 20 26 20
8x64 10 30 17 13 15 18 14 10
4 23 24 4 25 7 12 32
9 29 28 8 22 16 9 21
1
=4096個のサブブロック
実験

32個のパターンを学習
 4096個のブロックは32のどれかを出力する
画像に対して直接改変処理
 個々のブロックが改変前に出力していた値と
改変後に出力する値が変わっているかどうか
を確認
 入力を位置をランダムで決定した実験を20回
行い,平均値を求めた

実験1 誤認識率
入力の非認識率
1
0.9
0.8
0.7
割合
0.6
正しい入力
その他
0.5
0.4
0.3
0.2
0.1
0
1
2
3
4
5
6
7
8
9 10 11 12 13
加増改変の閾値(0.1刻み)
14
15
16
17
18
19
20
実験2 全体の誤認識ブロック
非認識個数
3845
3840
3835
個数
3830
閾値0.05
閾値0.1
3825
3820
3815
3810
3805
1
2
3
4
5
6
7
8
9 10 11 12 13
画像改変の閾値(0.1刻み)
14
15
16
17
18
19
20
実験3 学習の閾値による違い
学習の閾値による違い
25
非認識個数
20
15
系列1
系列2
10
5
0
1
2
3
4
5
6
7
8
9
10 11 12 13
画像改変の閾値(0.1刻み)
14
15
16
17
18
19
20
実験4 誤認識率 N=20
誤認識率 N=20
1
割合
0.8
0.6
正しい入力
その他
0.4
0.2
0
1
3
5
7
9 11 13 15
画像の閾値(0.1刻み)
17
19
まとめ

画像に対して何も改変処理を施さない場合は,
入力が正しものに関しては対応した正しい値
が,それ以外の部分ではノイズになる
 素直な使い方をすると攻撃に若干弱いようである
Fragile watermarkに使えるかも
 しかし,ある程度保持し続けるので,すぐには透かしは
壊れないので,semi-fragileといえる


全体ブロックの中には画像改変後にも同じ値
を持ち続けるものが多数ある
 逆にこのブロックを利用できないか