平成 26 年度 修士論文
低出生体重児・新生児・乳児の身長推定の改善 及び
圧縮画像における
ノンリファレンス型画質改善の検討
早稲田大学基幹理工学研究科 情報理工学専攻 5113B070-4
野口 千尋
指導 甲藤 二郎 教授 2015 年 2 月 2 日
指導教授印 受付印
1. 序論 ... 5
1.1. はじめに ... 5
1.2. 構成 ... 5
2. 低出生体重児・新生児・乳児の身長推定の改善 ... 6
2.1. 研究背景 ... 6
2.1.1. 概要 ... 6
2.1.2. 低出征体重児と低身長症 ... 6
2.1.3. 従来の身長測定方法 ... 7
2.1.4. 問題点 ... 7
2.2. 研究目的 ... 8
2.3. 関連技術 ... 8
2.3.1. Kinect ... 8
2.3.2. 画像処理技術 ... 10
2.3.2.1. 細線化 ... 10
2.3.2.2. モルフォロジー演算 ... 11
2.3.2.3. ラベリング ... 13
2.4. 撮影データ ... 13
2.5. Kinectを用いた単一画像に対する身長推定 ... 14
2.5.1. フローチャート ... 14
2.5.2. 実験結果 ... 17
2.5.3. 考察 ... 18
2.5.4. 問題点 ... 18
2.6. Kinectを用いた複数画像に対する身長推定 ... 18
2.6.1. 動画への拡張 ... 18
2.6.2. 実験結果 ... 19
2.6.3. 考察 ... 22
2.7. まとめと今後の課題 ... 22
3. 圧縮画像におけるノンリファレンス型画質改善の検討 ... 23
3.1. 研究背景 ... 23
3.1.1. 概要 ... 23
3.1.2. 符号化 ... 23
3.1.2.1. H.261 ... 23
3.1.2.2. MPEG-1 ... 23
3.1.2.3. MPEG-2/H.262 ... 23
3.1.2.4. MPEG-4 ... 24
3.1.2.5. AVC/H.264. ... 24
3.1.2.6. HEVC/H.265 ... 24
3.1.3. 画質劣化と復元 ... 24
3.2. 研究目的 ... 25
3.3. 関連技術 ... 25
3.3.1. PSNR ... 25
3.3.2. ブラインドPSNR推定 ... 26
3.3.3. フィルタリングによる画像復元 ... 26
3.3.3.1. 最小二乗フィルタ ... 27
3.3.3.2. ウィーナーフィルタ ... 28
3.3.4. K-meansクラスタリング ... 28
3.4. 提案手法:クラスタリングを用いたノンリファレンス型ウィーナーフィルタ ... 29
3.4.1. 概要 ... 29
3.4.2. 提案手法詳細 ... 30
3.4.3. 実験に使用する動画像 ... 31
3.4.4. 共通事項 ... 31
3.4.5. 予備実験:原画ありウィーナーフィルタ ... 32
3.4.5.1. 行領域ごとのウィーナーフィルタ ... 32
3.4.5.2. 列領域ごとのウィーナーフィルタ ... 33
3.4.5.3. ブロック領域ごとのウィーナーフィルタ ... 34
3.4.5.4. 考察 ... 35
実験結果:原画像なしウィーナーフィルタ ... 35
3.4.5.5. 原画像なし,行領域ごとのウィーナーフィルタ... 35
3.4.5.6. 原画像なし,列領域ごとのウィーナーフィルタ... 36
3.4.5.7. 原画像なし,ブロック領域ごとのウィーナーフィルタ... 37
3.4.5.8. ウィーナーフィルタ可視化 ... 38
3.4.6. 考察 ... 40
3.5. まとめと今後の課題 ... 42
謝辞 43 参考文献 ... 44
発表文献リスト ... 45
5
1. 序論
1.1. はじめに
低出生体重児・新生児・乳児(以下乳幼児)の成長の指標として,また低身長症などと いった疾患の早期発見のために,身長データは非常に重要である。しかし,乳幼児の身長 の測定は立位状態での測定が難しく,正確性,効率性の面で問題がある。本稿では,仰臥 位(寝そべった状態)の乳幼児を対象に,Kinect を用いた画像処理による身長推定システ ムについて,改善を行い,報告する。
画像の符号化など圧縮を行うことで,伝送にかかる容量や処理にかかる時間を軽減する ことが可能である。しかし,画像圧縮は同時にブロック歪みなどの画質劣化を伴うもので あり,画質改善手法としてウィーナーフィルタ(Wiener Filter)等を用いたフィルタリン グ処理が挙げられる。ウィーナーフィルタの取得には参照画像に用いるための原画像が必 要である。しかし,YouTube[1]などの動画共有サービスにアップロードされる 映像には,
原画像を用意することができないという問題がある。そこで,本稿では原画像を用いない 画質改善手法として,事前に画像とフィルタを学習することで,ウィーナーフィルタを取 得する手法について検討を行っている。
1.2. 構成
本稿は,低出生体重児・新生児・乳児の身長推定の改善と,圧縮画像におけるノンリフ ァレンス型画質改善の検討というふたつのテーマから成っている。第 2 章で身長推定につ いて,次に第3章で画質改善について報告している。
第4章で,全体のまとめについて述べる。
6
2. 低出生体重児・新生児・乳児の身長推定 の改善
2.1. 研究背景
2.1.1. 概要
従来,一般的に健康な新生児・乳児の発育は体重を指標としていたが,身長の発育データ も重要な指標とされるようになってきている。身長の増加率低下は様々な慢性疾患によっ て引き起こされ,さらにはネグレクト・虐待といった養育環境にも影響を受けるので,定 期的に行われる身長測定による問題の発見が可能となる。また,出生時の体重が 2500g 以 下の低出生体重児においては成長記録の重要性はより高くなり,低身長症などの疾患の早 期発見・治療につながるものである。
体重は体重計に乗せることで自動測定できるため比較的容易であるが,身長の測定は伸長 姿勢を保たなければならず,主義的に困難であるばかりか,不正確な値になりやすい.立 位での測定が可能な児童と比較して,立位姿勢を取ることができない乳幼児の測定ではそ れが顕著である。
2.1.2. 低出征体重児と低身長症
低出生体重児とは,出生時の体重が 2500g 未満の新生児を指す [2]。さらに,出生時の 体重が 1500g 未満の新生児は極出生体重時,1000g 未満の新生児は超出生体重児と呼ば れる [2]。低出生体重児は身体面の脆弱さに懸念があり,慢性肺疾患,消化器疾患,先天異 常,頭蓋内出血などといった成長障害を伴いやすい[2]。低出生体重児は,出生体重2500g を 超えている一般児と比較して身体の成長も遅い傾向にあるが,成長につれ身長,体重とも に一般児に追いつくようになる。しかし,10~20% の児はそのまま低身長症疾患となって しまう。
SGA 性低身長症は低身長症の中でも生後まもなく発症が確認されるものである。SGA 児 の内 90% は 2 歳頃までに身体発育が一般児に追いつくが,残り 10% は低身長のままと なる[3]。SGA 性低身長症には成長ホルモンによる治療が認められており,適応条件には出 生時の身長及び身長増加率を判断指標として用いている[3]。このことからも,乳幼児の身 体発育評価において身長データが重要であることがわかる.
7
2.1.3. 従来の身長測定方法
図 2.1 は,厚生労働省によって定められた,2 歳未満の乳幼児に対する仰臥位身長の計 測方法である。
図2. 1 2 歳未満の乳幼児に対する仰臥位身長の計測方法[4]
以下に手順を示す。
1. 全裸にした児を仰向けにして身長計の台板上にねかせる。
2. 補助者は児の頭頂点を固定板につけ,耳眼面(耳珠点と眼窩点とがつくる平面)が台板 と垂直になるように頭部を保持する。
3. 計測者は乳児の片側に立ち,乳児の頭に近い方の手で乳児の両膝をかるく台板におさえ て下肢を伸展させる。
4. もう一方の手で移動板をすべらせて乳児の足のうらにあて,足のうらが台板と垂直な平 面をなすようにする。
5. 1 mm 単位まで計測する。
2.1.4. 問題点
乳幼児は仰臥位姿勢の際,乳幼児特有の骨格のためにひざを曲げて,足首が足の甲のほ うへ反っている状態でいる場合が多いため,仰臥位身長測定では計測者の手によって一般 立位による身体測定のようにまっすぐ体を伸ばす必要がある。また,乳幼児は動いたり,
泣いたりするので,これが測定の妨げになる。このように,乳幼児の身長測定において,
正しい数値を得るのは主義的に困難であり,その結果不正確な値を最終値として用いる場 合が多い。これは医療現場においても同様である。
8
2.2. 研究目的
本論文の目的は,手間が掛かり不正確になりやすい乳幼児の身長測定を,画像処理を用 いて行うことで,身長計で測定するよりも容易で,より正確に,より短時間で身長測定を 行うことを目標にした,身長推定を行うことである.
以下を,十分な精度を達成したと判断する条件とする。
測定時の体位:仰臥位
身長計測部位:伸展位での頭頂-踵足底部の長さ 測定時間:数秒以内
測定誤差:再現性± 1~5% 以内
2.3. 関連技術
2.3.1. Kinect
KinectはMicrosoft社が販売しているXbox 360用のジェスチャーコントローラである。
日本では2010年11月に発売された[5]。Kinectではコントローラを手に持たずに体全身を 使った操作を行うことができる。このような人間の自然な動きでのインタラクションを可 能とする UI は,ナチュラルユーザインタフェース (NUI:Natural User Interface)と称 されているが,Kinect はその NUI デバイスの代表格と言っても過言ではない。また
Kinect ではジェスチャー入力の他にも,内蔵されたマイクによって音声での操作をも可能
である。
Kinect はこのような革新的な装置でありながら価格帯が約150米ドルと従来の高価な距
離画像センサと比較してもはるかに安価な民生機器であったため,世界中のユーザに広く 受け入れられ,ゲームコントローラという枠組みを越えたインタラクション装置として 様々なソフトウェア開発に用いられている[6]。
Kinectは以下に示す複数のセンサを内蔵している。
• 可視光カメラ(以下 RGB カメラ)
• 近赤外レーザ及び近赤外用カメラ(以下距離画像センサ)
• マイク4個
図2. 2にKinectと各種センサの位置を示す [7]。
9
図2. 2 Kinectのハードウェア[7]
チルトモーターを有しているため,プログラムに組み込むことでカメラの角度を変えるこ とも可能である。以上のセンサの中から,距離カメラを用いることで骨格を認識し,追跡 することが可能であり,これによってプレイヤーの動きを 3 次元のデータとして得ること ができるため,動きをゲームの動作とマッピングさせることでコントローラ不要なゲーム 操作を実現している。
距離画像センサは,距離情報を持った 3 次元画像データを得ることができる。内蔵され ているセンサは PrimeSense 社が開発したもので,距離の算出には赤外レーザを用いた三 角測量を行っている[6]。近赤外レーザから対象物にスポット光を投影し,対象物に映った パターンをカメラでとらえている。カメラからパターンの見込み角を求め,レーザから対 象物にパターンを照射した角度と,レーザとカメラの距離を基にした対象物までの距離を 算出することで,一回の投影による物体の距離計測が可能にしている。距離画像センサで 得られる深度の値は図2. 3のように,Kinectからの距離ではなく直交座標系での縦軸,横 軸をx,y座標とした奥行のz座標となる [7]。
10
図2. 3深度ストリーム値[7]
2.3.2. 画像処理技術
システム内で用いている画像処理技術について紹介する。
2.3.2.1. 細線化
細線化は,2値画像内の図形の線幅を細めて幅 1(画素)の中心線を抽出する処理である [8].図形や文字の認識の前処理に用いる。原図系の連結性を保持する必要があり,それに よって図形の本質的な構造を抽出することができる。
11
図2. 4 細線化例
2.3.2.2. モルフォロジー演算
モルフォロジーとは形態変化を数学的にとらえた数理形態学で,モルフォロジー演算は モルフォロジー理論を画像解析に応用した図形の変形操作に関する理論体系である [8]。画 像の特徴抽出が行えるので,ノイズの除去や平滑化などに用いる。
モルフォロジー演算処理には,構造要素とMinkowski 和・Minkowski 差が用いられる。
2つの集合 A,B に対するMinkowski和・Minkowski差は以下のように定義される。
Minkowski和:𝐴 ⊕ 𝐵 = ⋃𝑏∈𝐵𝐴𝑏 (1)
Minkowski差:𝐴 ⊖ 𝐵 = ⋃𝑏∈𝐵𝐴𝑏 (2)
𝐴𝑏= {𝑎 + 𝑏|𝑎 ∈ 𝐴}
A が対象画像,B が構造要素にあたり,A に対して B の原点を動かすことで処理を行 っている。モルフォロジー演算ではMinkowski 和・Minkowski 差を用いた画像処理をそ れぞれ膨張(erosion)・収縮(dilation)と呼んでおり,対象画像Aの構造要素Bによる膨 張はBの原点をAの全画素に対して平行移動させた際のB全体の集合領域,収縮はBの原 点をAの領域内に収まるように平行移動させた際のBの原点の集合領域となる[9]。図2. 5 は膨張・収縮の1例である。青で示した領域が各々の処理結果で,B における“+”がつ いている画素が原点となる。
12
図2. 5 膨張と収縮
さらに,膨張と伸縮の演算を合成したものが,開放(Opening)と閉鎖(Closing)の処理 である。これらは以下のように定義されている。
解放:𝐴 ○ 𝐵 = (𝐴 ⊖ 𝐵) ⊕ 𝐵 (3) 閉鎖:𝐴 • 𝐵 = (𝐴 ⊕ 𝐵) ⊖ 𝐵 (4) 膨張は幅の狭い凸部,収縮は幅の狭い凹部を取り除くことができ,それぞれ孤立点の除去,
不連続な点の接続と穴埋めといったノイズ除去・平滑化に用いることが可能である。
図2. 6解放と閉鎖
13
2.3.2.3. ラベリング
ラベリングとは,同じ連結成分に属する画素に同じ番号を割り当てる処理で,近傍処理 によるラベリング,ラン解析によるラベリング,境界追跡によるラベリングに大きく分け られる[8]。
本稿では近傍処理によるラベリングの,井村教授(大阪大)によって公開されているラ ベリングクラス[10]を用いる.図2. 7に実行例を示す。2値画像に対して行い,異なる連結 成分領域は異なる色で表現している。
図2. 7 ラベリング例
2.4. 撮影データ
実験に用いる撮影データは,大山建司先生(山梨大)の協力のもと小児科と幼稚園を訪 問し,2歳以下の乳幼児に対して撮影を行ったものを使用している。それぞれ約1分ほどの 動画ファイルである。
・ 山梨大学医学部付属病院 小児科:6人 (1歳未満)
・ 富士桜学園:6人 (5か月~2歳七ヶ月)
本稿では,これらを正解データとして用いる。
表2. 1被験者データ
A B C D E F G H I
height[cm] 44.5 53 55 63.4 66.8 67 82.5 88.4 90.5
14 (a) 人物抽出
•設定した矩形から平 面を検出し、人物を抽 出
(b) 中心線抽出
•画像処理で2値画像か ら中心線を抽出
(c) 身長算出
•中心線を成す点群間 の距離の総和
(a-1) 動画からフレームをキャプチャ (a-2) 全身が入るように矩形を設定
(a-3) 平面検出・人物抽出 (b-1) 2値画像を取得 (b-2) モルフォロジー演算
(b-3) ラベリング
(b-4) 細線化 (b-5) 各行の中点を取得
(b-6) 2つの線から中心線を取得 (c) 身長を算出
終了
2.5. Kinect を用いた単一画像に対する身長推定
本節では,Kinectを用いた身長推定手法[11]について紹介する。
2.5.1. フローチャート
図2. 8はシステムのフローチャートである。
図2. 8 単一画像に対する身長推定のフローチャート
おおまかには,(a) 撮影したRGB画像から人物領域を抽出し,(b)二次元的に画像処理を 行うことで身体の中心線となる座標を取得し,(c)深度画像から 3 次元情報を取得すること で,身長を算出している。
以下に各工程について詳細を述べる。
15 (a-1) 動画からフレームをキャプチャ
身長推定を行うフレームを選択する。対象の全身が映っていて,足が曲がったりしてい ないまっすぐな姿勢のものが好ましい。
(a-2) 全身が入るよう矩形を設定
対象を囲む矩形を設定する。矩形の 4 隅が対象の寝ている床面(平面)である必要があ る。実行例を図2. 9の(a-2)に示す。
(a-3) 平面検出・人物抽出
(a-2)で設定した矩形を対象が寝ている平面と仮定して,3点の座標から平面式を算出する。
その平面内にある座標で,距離カメラから取得した,カメラと平面の距離が近い座標を対 象人物を表す座標とみて,取得している。
(b-1) 二値画像を取得
取得した対象座標を1として二値化する。実行例を図2. 9の(b-1)に示す。
(b-2) モルフォロジー演算
二値画像を平滑化する。実行例を図2. 9の(b-2)に示す。
(b-3) ラベリング
ラベリングを行って,一番大きな領域だけを抽出する。これによって人物以外の誤抽出 領域を除去することができる。
(b-4) 細線化
細線化で領域の中心線を取得する。この段階では,腕部分などの横に伸びる中心線も含 まれている。実行例を図2. 9の(b-4)に示す。
(b-5) 各行の中点を取得
身体の中心線を取得するための参照用に,画像の各行ごとの中点を取得する。実行例を 図2. 9の(b-5)に示す。
(b-6) 二つの線から中心線を取得
(b-5)を参考に,(b-4)から点群を選択する。これを身体の中心線とする。実行例を図2. 9
の(b-6)に示す。
(c) 身長を算出
以下の式で,身体の中心線を示す点群間の距離の総和を求める。この値を身長推定結果 とする。
ℎ𝑒𝑖𝑔ℎ𝑡 = ∑ √(𝑥
𝑖+1− 𝑥
9)
2+ (𝑦
𝑖+1− 𝑦
9)
2+ (𝑧
𝑖+1− 𝑧
9)
2𝑛−1
𝑖=1
(1)
ℎ𝑒𝑖𝑔ℎ𝑡:身長 𝑥, 𝑦, 𝑧:各点の座標 𝑛:中心線の長さ
16 (a-1)
(b-1) (b-2)
(b-4) (b-5)
(b-6)
図2. 9.画像に対する身長推定実行例
17
2.5.2. 実験結果
Kinectを用いた,単一画像に対する身長推定の結果を図2. 10,表2. 2 単一画像の身長
推定結果に示す。
図2. 10 単一画像の身長推定結果
表2. 2 単一画像の身長推定結果
A B C D E F G H I
True[cm] 44.5 53 55 63.4 66.8 67 82.5 88.4 90.5
estimate[cm] 43.6 51.9 54.5 69.3 75.3 74.5 83.8 89.9 91.9
18
2.5.3. 考察
結果をみると,正解身長に近い値を推定できている。身体の中心線として扱っている線 が,細線化の結果ブレが生じているため,実際の値よりも大きな値となっていることがわ かる。
この結果は選択するフレームによって大きく変化する。身体全体が曲がっていたり,足 が前に折れている姿勢など,画像の二値化によって姿勢がわからなくなってしまうフレー ムに対して推定を行うと,正しい値が取得できない。
2.5.4. 問題点
単一の画像のみでは,選択するフレームに結果が依存してしまうため,安定した値を得 ることができない。また,二値化した場合に身長推定が正しく行える,姿勢がしっかり伸 びているフレームをキャプチャするのは測定者にとって非常に負担が大きく,容易に推定 が行えない。
2.6. Kinect を用いた複数画像に対する身長推定
2.6.1. 動画への拡張
2.5.3.の問題点を踏まえ,推定を動画へ拡張して推定を行う。
図2. 11 複数フレームを用いた身長推定
変更点は以下のとおりである。
……
19
・ 動画で撮影を行い,全フレームに対して身長推定を行う
動画中の全フレームに対し,それぞれ身長推定を行うことで,正しい姿勢で映っている フレームを選択する手間を省くことができる。
・ 各フレームでの推定値から中央値を算出し,身長値とする
複数のフレームから得られた推定結果を,中央値として一つの値にならしている。
・ 外れ値,失敗を除外
フレームごとの推定で,マイナス値や,非常に大きい,小さい値が身長として得られた 場合に,中央値計算から除外している。これにより,誤った値を算入しないことでより 正確な値となる。
フローチャートを
図2. 12 動画の身長推定フローチャートに示す。
図2. 12 動画の身長推定フローチャート
2.6.2. 実験結果
Kinectを用いた,動画に対する身長推定の結果を図2. 13 動画の身長推定結果,表2. 3
動画の身長推定結果,に示す。また,単一画像・複数画像(動画)の推定結果の,正解値と の誤差を比較し,図2. 13,表2. 4に示す。
撮影開始
単一フレームに対し身長推定
随時中央値を算出
撮影終了
20 0
10 20 30 40 50 60 70 80 90 100
A B C D E F G H I
H eight[ cm ]
Tester
true value estimate value
表2. 3 動画の身長推定結果
A B C D E F G H I
true[cm] 45.5 53 55 63.4 66.8 67 82.5 88.4 90.5
estimate[cm] 44 54.2 55.5 62.2 65.2 69.8 81.5 89.3 90.2
図2. 13 動画の身長推定結果
21
図2. 14 単一画像・複数画像に対する身長推定誤差比較
表2. 4 単一画像・複数画像に対する身長推定誤差比較
A B C D E F G H I
true height[cm] 45.5 53 55 63.4 66.8 67 82.5 88.4 90.5
the difference[cm] new -1.5 1.2 0.5 -1.2 -1.6 2.8 -1 0.9 -0.3
old -0.9 -1.1 -0.5 5.9 8.5 7.5 1.3 1.5 1.4
表2. 5 複数画像に対する身長推定の誤差と推定フレーム数
-4 -2 0 2 4 6 8 10
A B C D E F G H I
T h e di ffer ence [c m ]
Tester
new old
A B C D E F G H I
error[cm] -1.5 1.2 0.5 -1.2 -1.6 2.8 -1 0.9 -0.3
valid frames 41 101 199 44 77 62 75 51 55
22
2.6.3. 考察
対象を動画として,複数枚のフレームに対し推定を行うことで,より正確な身長値が取 得できるようになっている。単一での推定誤差と比較しても明らかである。結果が選択す るフレームに依存しないため,安定した推定が行え,結果に大きな変化がないことが原因 である。表2. 5から,有効フレーム数が多いほど,推定値が正確になることがわかる。よ って,撮影時間が長いほど,よい結果を得ることができる。ただし,動画を通して正しい 姿勢でないフレームが多い場合,正解値に近い値を得ることができない場合もあることが,
課題である。
また,フレームを選択し,その都度矩形を設定する手間が必要ないため,測定が非常に 容易になった。この点においても,改善がみられたといえる。
2.7. まとめと今後の課題
動画像に対する乳幼児の身長推定を行った。複数枚の画像を用いて推定を行うことで,
より正確・安定した値を取得できる。
より精度の高い結果を得るためには,身体を曲げた状態を検出し,除外する,曲げた状 態でも身長が推定できるようにするなどの検討が必要である。
23
3. 圧縮画像におけるノンリファレンス型画 質改善の検討
3.1. 研究背景 3.1.1. 概要
動画像の圧縮符号化方式 JPEG,MPEG-1,MPEG-2,MPEG-4,H.264.AVC, H.265.HEVC などの方式があり,いずれも画質圧縮することで容量の大きな画像の伝送を可能にしてい る。しかし,画像圧縮には画質劣化が伴い,画像を復元するためには参照画像としての原 画像が必要である。近年さかんである動画アップロード・共有サービスなどに挙げられる 動画群は,画質の劣化がみられるものの原画像を取得・参照することはできない場合が多 い。
3.1.2. 符号化
ここでは,代表的な映像符号化技術について述べる。
3.1.2.1. H.261
VHSに対応しており,ノン・インタレース(順次走査)方式を採用している。動き補
償予測とDCT (Discrete Cosine Transform) を組み合わせたハイブリッド符号化アルゴリ
ズムを採用している[13]。ルーブ内フィルタによって低ビットレート下での品質保障を可能 としている。
3.1.2.2. MPEG-1
H.261 の方式に加えて,映像フレームの並べ替えを行うことで,双方向動き補償フレー
ム間予測を行えるようにしている。さらに,動きベクトルの精度を1画素から1/2画素へ上 げ,予測精度向上とともに画素補間による雑音除去フィルタとして役立たせている。これ によって,ループ内フィルタなしでも品質を保障できるようになっている。
3.1.2.3. MPEG-2/H.262
1991年に,MPEG-1から移行した標準化方式である[12]。標準アナログテレビジョンの 品質を実現し,MPEG-1 ではできなかったインタレース(飛び越し走査)方式にも対応し
24
ている。これによって,奇数・偶数走査を組み合わせることができるようになっており,
動き補償・予測の効率の向上を可能としている。また,標準テレビジョンに加えて,HDTV の解像度も再現可能であるため,ディジタル放送における標準方式としての要件も満たし ている。
3.1.2.4. MPEG-4
第三世代の携帯電話を想定した標準化方式で,のちにインターネット適用も考慮されるよ うになった。低速低品質な回線,低解像度の映像など,悪条件の中でも品質を保障するよ うに要件が設定されている。動き補償・予測の精度向上,安定性の強化が行われている。
また,MPEG-4ではオブジェクトを分割して符号化を行う方式も導入されている。
3.1.2.5. AVC/H.264.
MPEG-4で問題となっていた
予測ブロック単位,参照画像数を増やすことで予測効率を上げ,符号化履歴を用いた算術 符号化の導入などを行うことで,圧縮効率を向上させている。また,ブロック歪みを取り 除くデブロッキングフィルタも導入している。
3.1.2.6. HEVC/H.265
2013年に制定された。H.264をもとに,各要素技術を改善することで,H.264と比較し て二倍の圧縮効率を実現している。
3.1.3. 画質劣化と復元
図 3. 1 のように,原画像𝑑(𝑥, 𝑦)に劣化関数ℎ(𝑥, 𝑦)を与えることで,劣化画像𝑔(𝑥, 𝑦)が出
力される。
圧縮
ℎ(𝑥, 𝑦) 劣化関数
𝑛(𝑥, 𝑦) ノイズ
雑音除去フ ィルタ𝐻𝑤
原画像𝑑(𝑥, 𝑦) 劣化画像𝑔(𝑥, 𝑦) 復元𝑓(𝑥, 𝑦)
図3. 1 画質劣化と画像復元
25
ディジタル画像の場合,劣化式は以下のような畳み込み式になる。ここで,𝑛を2𝑊×2𝑊の 二次元行列とする。
𝑔(𝑥, 𝑦) = ∑ ∑ 𝑑(𝑥 + 𝑚, 𝑦 + 𝑛)𝑛(𝑚, 𝑛)
𝑊
𝑚=−𝑤 𝑊
𝑛=−𝑊
= 𝑑(𝑥 + 𝑦) ∗ 𝑛(𝑥, 𝑦)
(1)
復元画像𝑓(𝑥, 𝑦)の𝐹(𝑢, 𝑣)は,フーリエ変換を行うと以下のように求める。
𝐺(𝑢, 𝑣) = 𝐹(𝑢, 𝑣)/𝐻(𝑢, 𝑣) (2)
𝐹(𝑢, 𝑣) = 𝐺(𝑢, 𝑣)/𝐻(𝑢, 𝑣) (3)
𝐺(𝑢, 𝑣)に𝐻𝑖𝑛𝑣(𝑢, 𝑣) = 1/𝐻(𝑢, 𝑣)となる逆フィルタ𝐻𝑖𝑛𝑣(𝑢, 𝑣)をかけることで,𝐹(𝑢, 𝑣)を得るこ とができる。
ここで,実際にはノイズ𝑛(𝑥, 𝑦)が加わるため,次式のようになる。
𝐺(𝑢, 𝑣) = 𝐹(𝑢, 𝑣)𝐻𝑖𝑛𝑣(𝑢, 𝑣) + 𝑁(𝑢, 𝑣) (4) この場合の逆フィルタ𝐻𝑤(𝑢, 𝑣)が,復元フィルタとなる。
3.2. 研究目的
画像圧縮によって得られた画像は原画像と比較した場合に劣化がみられる。画質を改善 し,画像を復元するための手法の多くは,原画像を用いて誤差をもとに復元を行うものが 多い。しかしながら,動画共有サービスにアップロードされるもののように,近年の画質 改善が望まれる動画の多くは原画像を取得することが困難である。そこで,本稿は原画像 を用いずに,劣化画像のみで画質改善が行えないか検討するものである。
3.3. 関連技術
3.3.1. PSNR
PSNR(peak signal-to-noise ratio)は,画像を客観的に画質評価するための手法のひとつで ある。原画像と劣化画像の信号とノイズの比率を用いるため,ピーク信号対雑音比とも呼 ばれる。
原画像を𝐼(𝑥, 𝑦),劣化画像𝐾(𝑥, 𝑦)とすると,以下のように算出される。
26 𝑀𝑆𝐸 = 1
𝑚𝑛 ∑ ∑|𝐼(𝑥, 𝑦) − 𝐾(𝑥, 𝑦)|2
𝑛−1
𝑦=0 𝑚−1
𝑥=𝑜
𝑃𝑆𝑁𝑅 = 10 𝑙𝑜𝑔10(𝑀𝐴𝑋𝑀𝑆𝐸2)
(1)
MSE (mean squared error):は平均二乗誤差で,原画像と劣化画像の各ピクセル差の二乗平均 であり,ここでは MSE がノイズとなる。MAX は MSE のピーク信号であり,8bit 画像では
𝑀𝐴𝑋 = 22− 1 = 255となる。式のように,PSNRはMSEの逆数の対数に比例し,画質劣
化が大きいほど小さな値,原画像に近いほど大きな値となる。PSNR 値は以下のようにおお よそレベル分けがなされる。
40[dB]:参照画像との差がわからない 30[dB]:多少のノイズがある
20[dB]:ノイズが非常に多い
画質評価用いられるが,ブロックノイズなどの主観的なノイズがフレーム内に存在して いても,PSNRの値にはほぼ影響が生じない。
3.3.2. ブラインド PSNR 推定
3.3.3. フィルタリングによる画像復元
原画像を圧縮することによりノイズの現れた劣化画像をフィルタリングすることで,画 質が改善された復元画像を得ることができる。最小二乗フィルタ(least squares filter), ウィーナーフィルタ(Winer filter)は,原画像と復元画像の間の平均二乗誤差が最小とな るような復元を行うためのフィルタである。
27
3.3.3.1. 最小二乗フィルタ
復元前と後の画像では,対応する画素の値は近いほうがよい。そのため,両値の二乗誤 差が最少となるように復元を行うのが,最小二乗法である。ここで最小二乗法は,画像と ノイズの相関がなく,歪みが線形であるということを前提としている。
復元画像𝑓(𝑛) ,劣化画像𝑔(𝑛)フィルタ𝑤(𝑛)とすると,𝑓(𝑛)は以下のように求まる。
𝑓(𝑛) = 𝑤(𝑘)𝑔(𝑛 − 𝑘)
= ∑ 𝑤(𝑘)𝑔(𝑛 − 𝑘)
𝐾−1
𝑛=0
(1)
𝑤(𝑛)は原画像𝑑(𝑛)と復元画像𝑓(𝑛)の平均二乗誤差から求められるコスト関数𝐽が最少となる ように最適化されているフィルタである。誤差𝑒(𝑛)を式(2)とすると,コスト関数𝐽は式(3)のよ うになる。
𝑒(𝑛) = 𝑑(𝑛) − 𝑦(𝑛) (2)
𝐽 = 1
𝑁∑ 𝑒(𝑛)2= 1 𝑁
𝑁−1
𝑛=0
∑(𝑑(𝑛) − 𝑦(𝑛))2
𝑁−1
𝑛=0 (3)
ノイズ除去フィルタ𝑤(𝑘)のなかでも,コスト関数𝐽の最小値を用いたものが最小二乗法フィル
タ𝑤𝑜𝑝𝑡(𝑘)である。𝑤𝑜𝑝𝑡は𝐽を𝑤で微分することで求めることができ,以下のように表すことが
圧 縮
ノイズ
雑音除去 フィルタ𝑤(𝑛)
原画像𝑑(𝑛) 劣化画像𝑔(𝑛) 復元画像𝑓(𝑛)
図3. 2 フィルタリングによる画像復元
28 できる。
𝑤𝑜𝑝𝑡= (𝑋𝑡𝑋)−1𝑋𝑡𝑑
𝑋:圧縮画像行列 (4)
3.3.3.2. ウィーナーフィルタ
ウィーナーフィルタも,二乗誤差が最小となるようなフィルタを導出するものである。ウィ ーナーフィルタは,以下の式で表される。
𝑤𝑜𝑝𝑡= 𝑅−1𝑝 (1)
各記号は以下を表す。
𝑅:劣化画像の自己相関行列
𝑝:劣化画像と原画像の自己相関ベクトル
3.3.4. K-means クラスタリング
クラスタリングは,分類対象となる,ある集合に対して,いくつかのクラスタに分割す る手法である。
K-means法は非階層型のクラスタリング手法で,データと属するクラスタの重心距離が
近くなるようにクラスタを割り当てている。分類対象集合内の点𝑥,属するクラスタの重心 点であるセントロイド(centroid)を𝑐𝑖とすると,目的関数Errは以下のように示される。
Err({𝑋𝑖}) = ∑ ∑(𝑑(𝑥, 𝑐𝑖))2
𝑥∈𝑐𝑖 𝑘
𝑖=1
(1)
反復してクラスタリングの更新を行い,全てのデータにおいてクラスタの更新がなくなっ た場合に収束となる。このとき,Errが最小となる。
初めのK 個のクラスタはランダムに設定されるため,クラスタリングの結果が一定では ないことが問題点として挙げられる。
29
図3. 3 k-meansクラスタリング例
3.4. 提案手法:クラスタリングを用いたノンリファレンス型
ウィーナーフィルタ
3.4.1. 概要
ウィーナーフィルタを用いた画質改善には,劣化画像の自己相関ベクトル,原画像と劣 化画像の相互相関ベクトルが必要となる。本手法ではあらかじめ劣化画像の自己相関ベク トルと,対応するウィーナーフィルタを学習させて,原画像なし劣化画像と相関性の高い 自己相関ベクトルから,ウィーナーフィルタを取得する手法について,検証した。
実験では,領域ごとのウィーナーフィルタの効果を比較・確認する予備実験と,提案手 法の検証を行う本実験の2つを行った。
30
3.4.2. 提案手法詳細
図3. 4 ノンリファレンス型ウィーナーフィルタのフローチャート
図3. 4に本手法のフローチャートを示す。
まず,学習用動画を用意し,(1) 劣化画像の自己相関ベクトル,原画像と劣化画像の相関 関数ベクトルと(1)から(2) ウィーナーフィルタを計算する。そして,それらのパラメータに
対してK-means法でクラスタリングを行う。これを原画像ありの自己相関ベクトル群とし,
ここまでが事前準備となる。
原画像なし劣化画像についても自己相関ベクトルを計算し,クラスタリングされた原画 像ありの自己相関関数ベクトル群を参照して,原画像なし劣化画像の自己相関ベクトルと,
相関性の高い自己相関ベクトルに対応するウィーナーフィルタを取得する。本手法では,
このウィーナーフィルタを用いて,フィルタリングを行い,原画像なしでの画質改善を図 っている。
ここで,類似する自己相関を選択する方法として,ユークリッド距離を用いている。
原画像なしのウィーナーフィルタ
クラスタリング
原画像と圧縮画像を用いたウィ ーナーフィルタ
各データを取得
・自己相関ベクトル
・ウィーナーフィルタ
Kmeans 法でクラスタリング
クラスタリング結果を参照 し,類似する自己相関ベク
トルを取得する。
原画像とのPSNRを 測定
行 列 ブ ロ ッ ク
対応するウィーナーフィル タを取得
31
3.4.3. 実験に使用する動画像
今回使用したシーケンスは,HEVC 標準化で用いられるテストシーケンスで,ハイビジ ョン・システム評価用標準動画像群である。
・ 圧縮ビットレート (コーデック: H.264/AVC)
1000bps ~ 7500bps (3500bps刻み)
・ 動画サイズ
720p (1280×720 pixcel)
・ Kmeansクラスタリングに用いた参照動画数:計87
3.4.4. 共通事項
予備実験・本実験ともに,1枚の画像に対して,以下の領域ごとにウィーナーフィルタで のフィルタリングを行う。これによって,ウィーナーフィルタの有効性について確認を行 う。
(1) 行 (2) 列
(3) ブロック(40×40pixel)
なお,フィルタリングは領域ごとに行い,PSNR 値の計算はフレームごとに行うものとす る。
32
3.4.5. 予備実験:原画ありウィーナーフィルタ
3.4.5.1. 行領域ごとのウィーナーフィルタ
図3. 5 行ごとのウィーナーフィルタ(1000bps).
図3. 6 行ごとのウィーナーフィルタ(7500bps)
0 5 10 15 20 25 30 35 40 45 50
1 7 13 19 25 31 37 43 49 55 61 67 73 79 85 91 97 103 109 115 121 127 133 139 145
PSNR[dB]
frame number
h264 1000bps column 1000bps
0 5 10 15 20 25 30 35 40 45 50
1 7 13 19 25 31 37 43 49 55 61 67 73 79 85 91 97 103 109 115 121 127 133 139 145
PSNR[dB]
frame number
h264 7500bps column 7500bps
33
3.4.5.2. 列領域ごとのウィーナーフィルタ
図3. 7 列ごとのウィーナーフィルタ(1000bps)
図3. 8 列ごとのウィーナーフィルタ(7500bps)
32 34 36 38 40 42 44 46
1 7 13 19 25 31 37 43 49 55 61 67 73 79 85 91 97 103 109 115 121 127 133 139 145
PSNR[dB]
frame number h264 1000bps
row 1000bps
0 5 10 15 20 25 30 35 40 45 50
1 7 13 19 25 31 37 43 49 55 61 67 73 79 85 91 97 103 109 115 121 127 133 139 145
PSNR[dB]
frame number h264 7500bps
row 7500bps
34
3.4.5.3. ブロック領域ごとのウィーナーフィルタ
図3. 9 ブロックごとのウィーナーフィルタ(1000bps)
図3. 10 ブロックごとのウィーナーフィルタ(7500bps)
31 31.5 32 32.5 33 33.5 34 34.5 35 35.5 36
1 7 13 19 25 31 37 43 49 55 61 67 73 79 85 91 97 103 109 115 121 127 133 139 145
PSNR[dB]
frame number h264 1000bps
block 1000bps
31.5 32 32.5 33 33.5 34 34.5 35 35.5 36 36.5 37
1 7 13 19 25 31 37 43 49 55 61 67 73 79 85 91 97 103 109 115 121 127 133 139 145
PSNR[dB]
frame number h264 7500bps
block 7500bps
35
3.4.5.4. 考察
結果をみると,領域分割を行ったウィーナーフィルタによって,PSNR 値が改善してい ることがわかる。ただし,フレームごとの行・列領域に分割したウィーナーフィルタリン グによるPSNR値のグラフ形状が類似するのに対し,ブロック領域に分割したウィーナー フィルタ結果については,他のフィルタと比較してグラフの形状が異なってしまっている。
これは,ウィーナーフィルタ領域の大きさに関係すると考えられる。行領域では 1×
1280pxel,列ごとでは720×1pxelごとにウィーナーフィルタをかけているが,ブロック領
域では40×40pxcelに分割し,その中でさらに1×40,40×1pxcelごとにフィルタをかけ
ているため,一度にフィルタリングする領域が少ない。そのため,
本実験によって,自己相関ベクトル群から選択したウィーナーフィルタが正しいもので あれば,PSNR値が改善されることが確認できた。
実験結果:原画像なしウィーナーフィルタ
3.4.5.5. 原画像なし,行領域ごとのウィーナーフィルタ
図3. 11 行ごとのウィーナーフィルタ(1000bps)
0 5 10 15 20 25 30 35 40 45
1 10 20 30 40 50 60 70 80 90 100 110 120 130 140
PSNR[dB]
frame number
h264 column
36
図3. 12 行ごとのウィーナーフィルタ(7500bps)
3.4.5.6. 原画像なし,列領域ごとのウィーナーフィルタ
図3. 13 列ごとのウィーナーフィルタ(1000bps)
0 5 10 15 20 25 30 35 40 45
1 10 20 30 40 50 60 70 80 90 100 110 120 130 140
PSNR[dB]
frame number
h264 column
32 33 34 35 36 37 38 39 40
1 10 20 30 40 50 60 70 80 90 100 110 120 130 140
PSNR[dB]
frame number
h264 row
37
図3. 14 列ごとのウィーナーフィルタ(7500bps)
3.4.5.7. 原画像なし,ブロック領域ごとのウィーナーフ
ィルタ
図3. 15 ブロックごとのウィーナーフィルタ(1000bps)
35 36 37 38 39 40 41 42
1 10 20 30 40 50 60 70 80 90 100 110 120 130 140
PSNr[dB]
frame number
h264 row
0 5 10 15 20 25 30 35
1 10 20 30 40 50 60 70 80 90 100 110 120 130 140
PSNR[dB]
frame number
h264 column
38
図3. 16 ブロックごとのウィーナーフィルタ(7500bps)
3.4.5.8. ウィーナーフィルタ可視化
ウィーナーフィルタの結果について主観的に評価するため,グラフに表示して可視化を 行う。行ごとのウィーナーフィルタのうち,無作為に選出した隣り合う行に対してフィル タリングを行った50000種類について図3. 17に示す。また,87種類の学習動画から作成 した、行領域ごとの全ウィーナーフィルについてクラスタリングを行い、結果として得ら れた100の重心となるウィーナーフィルタを,図3. 18に示す。
0 5 10 15 20 25 30 35
1 10 20 30 40 50 60 70 80 90 100 110 120 130 140
PSNR[dB]
frame number
h264 row
39
図3. 17 行領域のウィーナーフィルタ例
filter's elements
filter's elements
40
図3. 18 行領域のウィーナーフィルタクラスタリング結果
3.4.6. 考察
予備実験ではウィーナーフィルタによってPSNR値に改善がみられたが,原画像なしの ウィーナーフィルタでは,PSNR 値が下がってしまう結果となった。これは,クラスタリ ングされた自己相関ベクトル群から選択された自己相関ベクトルに対応するウィーナーフ ィルタの中に,正しいウィーナーフィルタに類似するフィルタがなかったためである。原 因として,候補となるウィーナーフィルタ数が少ないこと,類似するウィーナーフィルタ の選出アルゴリズムに改善の余地があることなどが考えられる。
一方,図3. 13のように,一部PSNR値が正解よりも上回っている場合も存在した。こ
の点について検証を行うこととする。
図3. 19は,図3. 13において原画像なしのウィーナーフィルタPSNR値結果が原画像あ
りのウィーナーフィルタ結果を上回っているフレームに対応する両ウィーナーフィルタの グラフである。図3. 20は,同動画の原画像なしウィーナーフィルタのPSNR値が原画像 ありの値を下回っているフレームに対するグラフである。両グラフからわかるように,ウ ィーナーフィルタを可視化してみた場合,ふたつに相違点はみられない。また,グラフ内 のフィルタが類似するものとはいいがたいため,今回の場合正しいウィーナーフィルタを 取得できていないと判断する。
41
図3. 19 選出されたウィーナーフィルタと,実際のウィーナーフィルタの比較:PSNR改
善時
図3. 20 選出されたウィーナーフィルタと,実際のウィーナーフィルタの比較:PSNR値
filter’s number filter’s number filter’s number
42 劣化時
3.5. まとめと今後の課題
原画像なしの劣化画像に対して,画質改善を行う手法について検討を行った。学習動画 から自己相関関数,ウィーナーフィルタのクラスタリングを行ったが,実験ではPSNR値 の改善はみられなかった。
今後の課題としては,クラスタリングに用いる動画の数を増やす,類似する自己相関関 数を選出するアルゴリズムの検討などが挙げられる。
43
謝辞
本研究を行うにあたり,的確な助言,丁寧なご指導をしてくださった甲藤二郎教授に心 より御礼申し上げます.
また,実験データの撮影のために貴重な時間を割いて協力してくださっただけでなく,
数多くの助言をくださった山梨大学の大山先生に,深く感謝申し上げます.
さらに,研究をご指導いただいた博士課程の先輩方, Visual班の方々,さまざまな面で お世話になった甲藤研究室の皆様に深く感謝いたします.
2015 年 2 月 2 日
野口 千尋
44
参考文献
[1] YouTube
http://www.youtube.com/
[2] 河野由美, 低出生体重児の成長, 小児科診療 71(9): 1467-1471, 2008.
[3] 田中敏章,SGA 性低身長症の診断と治療, 産婦人科治療 102(4): 378-382, 2011.
[4] 厚生労働省ホームページ 計測器具及び計測方法(乳幼児身体発育調査必携より抜粋)
http: // www.mhlw.go.jp / houdou / 0110 / h1024-4d.html
[5] 大久保榮,中村薫,齋藤俊太,宮城英人,Kinect for Windows SDK プログラミング C++
編,2012,株式会社 秀和システム
[6] 根津禎,Kinect に見る,ジェスチャー入力の可能性,日経エレクトロニクス (1046), 73-85, 2010-12-27日経 BP 社
[7] Kinect for Windows SDK ドキュメント,
http://msdn.microsoft.com/en-us/library/hh855347 [8] 田村秀行,コンピュータ画像処理,2002, 株式会社オーム社
[9] 浅野 晃,延原 肇,マセマティカルモルフォロジーの基礎と新展開,電子情報通信学 会誌 92(10), 876-880,2009-10-01
[10] ラベリングクラス
http: // oshiro.bpe.es.osaka-u.ac.jp / people / sta ff/ imura / products / labeling
[11] 野口千尋, 甲藤二郎, 大山建司,“低出生体重児・新生児・乳児の身長推定”, 電子情報
通信学会, March.2012
[12] 村上篤道,浅井光太郎,関口俊一,高効率映像符号化技術 HEVC/H.265とその応用,
2013,株式会社 オーム社
[13] 大久保榮,“H.265/HEVC教科書”,インプレスジャパン,2013年
45
発表文献リスト
[1]. 野 口 千 尋 , 甲 藤 二 郎 , 大 山 建 司 低 出 生 体 重 児 ・ 新 生 児 ・ 乳 児 の 身 長 推 定
PCSJ2013/IMPS2013 2013/11
[2]. 野口千尋, 甲藤二郎, 大山建司 低出生体重児・新生児・乳児の身長推定-Kinect を用
いた画像処理システム- 画像電子学会 年次大会 2013/6
[3]. 野口千尋,甲藤二郎,大山建司,“低出生体重児・新生児・乳児の身長推定の改善−Kinect
を用いた画像処理システム−”,2014年度画像電子学会 第42回年次大会,2014/6/29-30 [4]. Chihiro NOGUCHI,Jiro KATTO,Kenji Ohyama,“Improvement of Height Estimation of Low Birth Weight Infants, Newborns and Infants Image Processing System Using Kinect”, IEEE GCCE 2014,2014/10