デジタルメディア処理2 担当: 井尻 敬 前期の復習 10分 後期の概要 10分 試験の総括 10分.

Slides:



Advertisements
Similar presentations
ゲームプログラミング講習 第2章 関数の使い方
Advertisements

サービス管理責任者等研修テキスト 分野別講義    「アセスメントと        支援提供の基本姿勢」 <児童発達支援管理責任者> 平成27年10月1日.
ヒトの思考プロセスの解明を目的とするワーキングメモリの研究
第27講 オームの法則 電気抵抗の役割について知る オームの法則を使えるようにする 抵抗の温度変化を理解する 教科書P.223~226
コラッツ予想の変形について 東邦大学 理学部 情報科 白柳研究室 山中 陽子.
コンパイラ 第3回 字句解析 ― 決定性有限オートマトンの導出 ―
第5章 家計に関する統計 ー 経済統計 ー.
公共財 公共経済論 II no.3 麻生良文.
VTX alignment D2 浅野秀光 2011年12月15日  放射線研ミーティング.
冷却フランシウム原子を用いた 電子の永久電気双極子能率探索のための ルビジウム磁力計の研究
生命情報学 (8) スケールフリーネットワーク
前半戦 「史上最強」風 札上げクイズ.

認知症を理解し 環境の重要性について考える
フッ化ナトリウムによる洗口 2010・9・13 宮崎市郡東諸県郡薬剤師会 学校薬剤師  日高 華代子.
食品の安全性に関わる社会システム:総括 健康弱者 ハイリスク集団 HACCP (食肉処理場・食品工場) 農場でのQAP 一般的衛生管理
規制改革とは? ○規制改革の目的は、経済の活性化と雇用の創出によって、   活力ある経済社会の実現を図ることにあります。
地域保健対策検討会 に関する私見(保健所のあり方)
公共政策大学院 鈴木一人 第8回 専門化する政治 公共政策大学院 鈴木一人
医薬品ネット販売規制について 2012年5月31日 ケンコーコム株式会社.
平成26年8月27日(水) 大阪府 健康医療部 薬務課 医療機器グループ
平成26年度 呼吸器学会からの提案結果 (オレンジ色の部分が承認された提案) 新規提案 既収載の変更 免疫組織化学染色、免疫細胞化学染色
エナジードリンクの危険性 2015年6月23日 経営学部市場戦略学科MR3195稲沢珠依.
自動吸引は 在宅を変えるか 大分協和病院 院長         山本 真.
毎月レポート ビジネスの情報 (2016年7月号).
医療の歴史と将来 医療と医薬品産業 個人的経験 3. 「これからの医療を考える」 (1)医薬品の研究開発 -タクロリムスの歴史-
社会福祉調査論 第4講 2.社会調査の概要 11月2日.
2015年12月28日-2016年3月28日 掲載分.
2010度 民事訴訟法講義 補論 関西大学法学部教授 栗田 隆.
腫瘍学概論 埼玉医科大学国際医療センター 包括的がんセンター 緩和医療科/緩和ケアチーム 奈良林 至
“企業リスクへの考え方に変化を求められています。 トータルなリスクマネジメント・サービスをプロデュースします。“
情報漏えい 経済情報学科 E  西村 諭 E  釣 洋平.
金融班(ミクロ).
第11回 2009年12月16日 今日の資料=A4・4枚+解答用紙 期末試験:2月3日(水)N2教室
【ABL用語集】(あいうえお順) No 用語 解説 12 公正市場価格 13 債権 14 指名債権 15 事業収益資産 16 集合動産 17
基礎理論(3) 情報の非対称性と逆選択 公共政策論II No.3 麻生良文.
浜中 健児 昭和42年3月27日生まれ 東京都在住 株式会社ピー・アール・エフ 代表取締役 (学歴) 高 校:千葉県立東葛飾高校 卒業
COPYRIGHT(C) 2011 KYUSHU UNIVERSITY. ALL RIGHTS RESERVED
Blosxom による CMS 構築と SEO テクニック
記入例 JAWS DAYS 2015 – JOB BOARD 会社名 採用職種 営業職/技術職/その他( ) 仕事内容 待遇 募集数
ネットビジネスの 企業と特性 MR1127 まさ.
Future Technology活用による業務改革
ネットビジネス論(杉浦) 第8回 ネットビジネスと情報技術.
g741001 長谷川 嵩 g740796 迫村 光秋 g741000 西田 健太郎 g741147 小井出 真聡
自然独占 公共経済論 II no.5 麻生良文.
Autonomic Resource Provisioning for Cloud-Based Software
Webショップにおける webデザイン 12/6 08A1022 甲斐 広大.
物理的な位置情報を活用した仮想クラウドの構築
ハイブリッドクラウドを実現させるポイントと SCSKのOSSへの取組み
寺尾 敦 青山学院大学社会情報学部 第12回 情報デザイン(4) 情報の構造化と表現 寺尾 敦 青山学院大学社会情報学部
【1−1.開発計画 – 設計・開発計画】 システム開発計画にはシステム開発を効率的、効果的に実行する根拠(人員と経験、開発手順、開発・導入するシステム・アプリケーション・サービス等)を記述すること。 システム開発の開始から終了までの全体スケジュールを記載すること。 アプリケーション機能配置、ソフトウェア、インフラ構成、ネットワーク構成について概要を示すこと。
6 日本のコーポレート・ガバナンス 2008年度「企業論」 川端 望.
急成長する中国ソフトウェア産業 中国ソフトウェアと情報サービス産業の規模 総売上高は5年間で約5.3倍の成長
米国ユタ州LDS病院胸部心臓外科フェローの経験
公益社団法人日本青年会議所 関東地区埼玉ブロック協議会 JCの情熱(おもい)育成委員会 2011年度第1回全体委員会
次世代大学教育研究会のこれまでの活動 2005年度次世代大学教育研究大会 明治大学駿河台校舎リバティタワー9階1096教室
子どもの本の情報 大阪府内の協力書店の情報 こちらをクリック 大阪府内の公立図書館・図書室の情報
第2回産業調査 小島浩道.
〈起点〉を示す格助詞「を」と「から」の選択について
広東省民弁本科高校日語専業骨幹教師研修会 ①日本語の格助詞の使い分け ②動詞の自他受身の選択について   -日本語教育と中日カルチャーショックの観点から- 名古屋大学 杉村 泰.
■5Ahバッテリー使用報告 事例紹介/東【その1】 ■iphon4S(晴れの昼間/AM8-PM3) ◆約1時間で68%⇒100%
『ワタシが!!』『地域の仲間で!!』 市民が始める自然エネルギー!!
ポイントカードの未来形を形にした「MUJI Passport」
SAP NetWeaver を支える Microsoft テクノロジーの全貌 (Appendix)
ガイダンス(内業) 測量学実習 第1回.
Python超入門 久保 幹雄 東京海洋大学.
熱力学の基礎 丸山 茂夫 東京大学大学院 工学系研究科 機械工学専攻
京都民医連中央病院 CHDF学習推進委員会
資料2-④ ④下水道.
Accessによる SQLの操作 ~実際にテーブルを操作してみよう!~.
Presentation transcript:

デジタルメディア処理2 担当: 井尻 敬 前期の復習 10分 後期の概要 10分 試験の総括 10分

デジタルメディア処理2、2017(前期) 4/13 デジタル画像とは : イントロダクション 4/20 フィルタ処理1 : 画素ごとの濃淡変換、線形フィルタ,非線形フィルタ 4/27 フィルタ処理2 : フーリエ変換,ローパスフィルタ,ハイパスフィルタ 5/11 画像の幾何変換1 : アファイン変換 5/18 画像の幾何変換2 : 画像の補間,イメージモザイキング 5/25 画像領域分割 : 領域拡張法,動的輪郭モデル,グラフカット法, 6/01 前半のまとめ (約30分)と中間試験(約70分) 6/08 特徴検出1 : テンプレートマッチング、コーナー・エッジ検出 6/15 特徴検出2 : DoG、SIFT特徴量、Hough変換 6/22 画像認識1 : パターン認識概論,サポートベクタマシン 6/29 画像認識2 : ニューラルネットワーク、深層学習 7/06 画像処理演習 : ImageJを使った画像処理 7/13 画像処理演習 : Pythonプログラミング 7/20 後半のまとめ (約30分)と期末試験(約70分)

特徴点検出 ガウシアンフィルタの性質 DoGとSIFT特徴量 Hough変換

ガウシアンフィルタの性質

線形フィルタとは(convolution) 連続 : 離散 : 𝑔∗𝑓 𝑥 = 𝑘=−∞ ∞ 𝑔 𝑘 𝑓 𝑥−𝑘 𝑔∗𝑓 𝑥 = −∞ ∞ 𝑔 𝑡 𝑓 𝑥−𝑡 𝑑𝑡 𝑔 𝑘 𝑓 𝑥 1/3 33 15 22 11 26 32 12 94 108 98 111 121 102 20 1 3 22+ 1 3 11+ 1 3 26 =20 23 1 3 11+ 1 3 26+ 1 3 32 =23 周囲3ピクセルの平均を取るフィルタ 𝑔∗𝑓 𝑥

線形フィルタとは(convolution) 連続 : 離散 : 𝑔∗𝑓 𝑥 = 𝑘=−∞ ∞ 𝑔 𝑘 𝑓 𝑥−𝑘 𝑔∗𝑓 𝑥 = −∞ ∞ 𝑔 𝑡 𝑓 𝑥−𝑡 𝑑𝑡 『*』を畳み込み積分(Convolution)と呼び,以下の性質が成り立つ 交換 : 𝑔∗𝑓= 𝑓∗𝑔 結合 : 𝑓∗ 𝑔∗ℎ = 𝑓∗𝑔 ∗ℎ 分配 : 𝑓∗ 𝑔+ℎ =𝑓∗𝑔+𝑓∗ℎ 微分 : 𝑑 𝑑𝑥 𝑓∗𝑔 = 𝑑𝑓 𝑑𝑥 ∗𝑔=𝑓∗ 𝑑𝑔 𝑑𝑥 フーリエ変換: ℱ 𝑓∗𝑔 =ℱ 𝑓 ℱ 𝑔

畳み込み積分のフーリエ変換: ℱ 𝑓∗𝑔 =ℱ 𝑓 ℱ 𝑔 TODO 左の一番下から、右への変形が自明ではなくない?

畳み込み積分のフーリエ変換: ℱ 𝑓∗𝑔 =ℱ 𝑓 ℱ 𝑔 * σ=6 ℱ −1 ℱ 𝑓 ℱ 𝑔 × σ=1/6

ガウシアンフィルタとは 1D 𝜎=1 2D 𝜎=1 ガウス関数により畳み込むフィルタのこと 画像を平滑化する効果がある(ローパスフィルタ) 画像処理において様々な場面で活躍する 1D 𝜎=1 2D 𝜎=1 𝑔 σ 𝑥 = 1 2𝜋 𝜎 2 𝑒 − 𝑥 2 2𝜎 2 𝑔 σ 𝑥,𝑦 = 1 2𝜋 𝜎 2 𝑒 − 𝑥 2 + 𝑦 2 2𝜎 2

ガウシアンのフーリエ変換はガウシアン 標準偏差σのガウス関数 𝑔 σ 𝑥 = 1 2𝜋 𝜎 2 𝑒 − 𝑥 2 2𝜎 2 𝑔 σ 𝑥 = 1 2𝜋 𝜎 2 𝑒 − 𝑥 2 2𝜎 2 をフーリエ変換すると標準偏差が逆 数のガウシアンになる ℱ 𝑔 σ 𝑥 𝜔 = −∞ ∞ 𝑔 σ 𝑥 𝑒 −𝜔𝑥𝑖 𝑑𝑥 = 𝑒 − 𝜔 2 𝜎 2 2 または ℱ 𝑔 σ 𝑥 𝜔 = 1 2𝜋 −∞ ∞ 𝑔 σ 𝑥 𝑒 −𝜔𝑥𝑖 𝑑𝑥 = 1 2𝜋 𝑒 − 𝜔 2 𝜎 2 2 𝜎=3.0 ℱ 𝑔 σ 𝑥 𝜔 = −∞ ∞ 1 2𝜋 𝜎 2 𝑒 − 𝑥 2 2𝜎 2 e −𝜔𝑥𝑖 𝑑𝑥 = 1 2𝜋 𝜎 2 2𝜎 2 𝜋 1 𝑒 − 2𝜎 2 𝜔 2 4 = 𝑒 − 𝜔 2 𝜎 2 2 TODO 以下の公式の証明を… 𝐹 𝜔 = −∞ ∞ 𝑒 −𝑎 𝑥 2 e −2𝜋𝜔𝑥𝑖 𝑑𝑥 = 𝜋 𝑎 𝑒 − 𝜋 2 𝜔 2 𝑎 … 3 𝐹 𝜔 = −∞ ∞ 𝑒 −𝑎 𝑥 2 e −𝜔𝑥𝑖 𝑑𝑥 = 𝜋 𝑎 𝑒 − 𝜔 2 4𝑎 … 4 http://mathworld.wolfram.com/FourierTransformGaussian.html   𝜎=1/3.0

𝑔 𝑎 2 + 𝑏 2 𝑥 を一度だけ畳み込むことと等しい 𝑔 𝑎 𝑥 と 𝑔 𝑏 𝑥 を連続して畳み込むのは 𝑔 𝑎 2 + 𝑏 2 𝑥 を一度だけ畳み込むことと等しい 𝑔 𝜎=3 𝑥 2つの異なるガウシアンフィルタを用意する 𝑔 𝑎 𝑥 = 1 2𝜋 𝑎 2 𝑒 − 𝑥 2 2 𝑎 2 , 𝑔 𝑏 𝑥 = 1 2𝜋 𝑏 2 𝑒 − 𝑥 2 2 𝑏 2 これらのフーリエ変換は以下の通り 𝐺 𝑎 𝜔 = 𝑒 − 𝜔 2 𝑎 2 2 , 𝐺 𝑏 𝜔 = 𝑒 − 𝜔 2 𝑏 2 2 関数𝑓(x)に,フィルタを順番に適用する ℎ 𝑥 = 𝑔 𝑎 𝑥 ∗ 𝑔 𝑏 𝑥 ∗𝑓 𝑥 = 𝑔 𝑎 𝑥 ∗ 𝑔 𝑏 𝑥 ∗𝑓 𝑥 = ℱ −1 ℱ 𝑔 𝑎 𝑥 ∗ 𝑔 𝑏 𝑥 ∗𝑓 𝑥 = ℱ −1 𝐺 𝑎 𝜔 𝐺 𝑏 𝜔 ∗𝑓 𝑥 = ℱ −1 𝑒 − 𝜔 2 𝑎 2 + 𝑏 2 2 ∗𝑓 𝑥 = 1 2𝜋 𝑎 2 + 𝑏 2 𝑒 − 𝑥 2 2 𝑎 2 + 𝑏 2 ∗𝑓 𝑥 = 𝑔 𝑎 2 + 𝑏 2 𝑥 ∗𝑓 𝑥 𝑔 𝜎=5 𝑥 𝑔 𝜎=4 𝑥 𝑓 𝑥 = 1 2𝜋 −∞ ∞ 𝑒 −𝑎 𝜔 2 e 𝜔𝑥𝑖 𝑑𝑥 = 1 2𝜋 𝜋 𝑎 𝑒 − 𝜔 2 4𝑎 を利用する 1 2𝜋 −∞ ∞ 𝑒 − 𝜔 2 𝑎 2 + 𝑏 2 2 e 𝜔𝑥𝑖 𝑑𝑥 = 1 2𝜋 2𝜋 𝑎 2 + 𝑏 2 𝑒 − 2𝑥 2 4 𝑎 2 + 𝑏 2 = 1 2𝜋 𝑎 2 + 𝑏 2 𝑒 − 𝑥 2 2 𝑎 2 + 𝑏 2  

スケールスペース 画像の撮影法によって,対象物の大きさは変化する 大きさの異なる物体(特徴量)の比較は結構難しい 元画像にσの異なるガウシアンフィルタを適用し,スケールの異な る複数画像を利用して画像処理を行おう,という考え方 なんでガウシアンなの? Florack et al. 1992が条件を挙げている + 線形フィルタであること + 平行移動に対して不変 + スケール不変 + その操作が半群となる,σ1平滑化して、σ2平滑化した結果は、元の画像をσ3だけ平滑化した結果である σ1, σ2 ∈ A, → σ1*σ2 ∈ A + 等方的

DoG : Difference of Gaussian 𝑔 𝑘 4 σ ∗𝐼 スケールを考慮して特徴点を検出する 異なるσのガウシアンフィルタをかける ぼかした画像の差分を計算 これが“Difference Of Gaussian” DoG画像中で局所最大・最小点を発見 - 𝑔 𝑘 3 σ ∗𝐼 - 𝑔 𝑘 2 σ ∗𝐼 - 𝑔 𝑘 1 σ ∗𝐼 注目画素(赤)の3次元的な隣接画素(黄色)を考慮して局所最大・最小かどうかを判断する 𝑔 𝑘 0 σ ∗𝐼 - 異なるスケールのガウシアンフィルタを適用

DoG : Difference of Gaussian DoG.py DoG : Difference of Gaussian 局所的に輝度値が高い・低い点やエッジ,コーナーなどが検出される その特徴点が現れたスケールも同時に得られる (どの解像度でその点が特徴的だったかが分かる)

まとめ: ガウシアンフィルタとその応用 𝑔 σ 𝑥 = 1 2𝜋 𝜎 2 𝑒 − 𝑥 2 2𝜎 2 画像処理において頻繁に利用されるガウシアンフィルタ の性質を紹介した ガウス関数のフーリエ変換はガウス関数 複数のガウシアンフィルタ適用は,一つのガウシアン フィルタで表せる 𝑔 𝑎 𝑥 ∗ 𝑔 𝑏 𝑥 ∗𝑓 𝑥 = 𝑔 𝑎 2 + 𝑏 2 𝑥 ∗𝑓 𝑥 Difference of Gaussian Gaussian Pyramid (今回時間がなく扱えなかった…) 𝑔 σ 𝑥 = 1 2𝜋 𝜎 2 𝑒 − 𝑥 2 2𝜎 2 𝑔 σ 𝑥,𝑦 = 1 2𝜋 𝜎 2 𝑒 − 𝑥 2 + 𝑦 2 2𝜎 2

特徴抽出とマッチング 画像内から特徴的な場所を検出し似た 特徴を持つ場所と対応付けしたい パノラマ合成,ステレオ視,物体認 識,VR(位置あわせ),etc 画像内から特徴的な点を検出する 検出した点の局所的な特徴を計算機が 処理できる形で記述したい + 局所特徴を多次元ベクトルで表現 + 平行移動/拡大/回転に強い記述が理想(平 行移動・拡大縮小・回転があっても特徴量が 変化しない)

SIFT特徴 Scale Invariant Feature Transform SIFT.py SIFT特徴 Scale Invariant Feature Transform 各点が128次元の特徴ベクトルを持つ 有名&頻繁に利用される特徴量のひとつ 周囲の特徴を128次元ベクトルで表現 平行移動・回転・拡大縮小に堅固 平行移動・回転・拡大縮小があっても似た特 徴ベクトルを出力できる 特徴ベクトルにすると局所領域の相違度 を計算できる 相違度= i=1 128 𝑎 𝑖 − 𝑏 𝑖 2 ※ 𝑎 𝑖 , 𝑏 𝑖 は特徴ベクトルの要素 ※これは相違度の一例

特徴ベクトルとか言われてもしっくりこないという人のために… 画像2枚から特徴的な点を沢山抽出できたとしてどれとどれが似ているかを知りたい つまり,どれとどれが似た局所画像を持つか知りたい 検出した特徴点の周囲の情報を,比較できる形(数値データ)に変換したい       !!!特徴ベクトル!!! 撮影条件によって対象は回転・拡大縮小・平行移動するので,画像が回転・拡大縮小・平行移動しても似た特徴ベクトルを生成できる手法がほしい   この条件を満たすSIFTが良く用いられてきた

SIFT特徴 特徴点検出 2. 方向検出 3. 特徴ベクトル計算 検出した方向に沿って局所領域を回転 DoGの極大・極小を特徴点とする Harris 行列を用いてエッジ点は除去 閾値処理でノイズ(極大値が小さい点)も除去 2. 方向検出 発見した特徴点においてそのサイズに合わせた局所 領域を考える(追記しました) 勾配ヒストグラムを生成(方向を36分割し,強度 を中心からの距離で重み付け) ヒストグラムを正規化し強度が0.8以上の方向を検 出(複数検出される複数の特徴量を生成) 3. 特徴ベクトル計算 検出した方向に沿って局所領域を回転 領域を4x4分割し,各領域内で勾配ヒストグ ラムを計算する 勾配ヒストグラムを特徴ベクトルとする 勾配は8方向に量子化 4*4*8 = 128次元ベクトルに 得られた特徴ベクトルを正規化(ベクトルの総和 で割る) SIFT特徴 教科書図11.17 2. において重みはガウシアンを利用し,そのシグマは対称とするスケールから取得する 3. 教科書図11.18

SIFT特徴点の例(教科書図11.19)

なぜ拡大・回転について堅固なのか 特徴点検出 2. 方向検出 3. 特徴ベクトル計算 拡大縮小: サイズを考慮して特徴点を検出し, DoGの極大・極小を特徴点とする Harris 行列を用いてエッジ点は除去 閾値処理でノイズ(極大値が小さい点)も除去 2. 方向検出 発見した特徴点においてそのサイズに合わせた局 所領域を考える(追記しました) 勾配ヒストグラムを生成(方向を36分割し,強度 を中心からの距離で重み付け) ヒストグラムを正規化し強度が0.8以上の方向を 検出(複数検出される複数の特徴量を生成) 3. 特徴ベクトル計算 検出した方向に沿って局所領域を回転 領域を4x4分割し,各領域内で勾配ヒストグ ラムを計算する 勾配ヒストグラムを特徴ベクトルとする 勾配は8方向に量子化 4*4*8 = 128次元ベクトルに 得られた特徴ベクトルを正規化(ベクトルの総 和で割る) なぜ拡大・回転について堅固なのか 拡大縮小: サイズを考慮して特徴点を検出し, そのサイズの窓内でヒストグラムを計算 回転: 局所領域の勾配方向に沿って窓を回転する SIFT特徴は, 特徴点を中心とする局所領域に対して  スケールと方向を正規化したものとで 特徴点周囲の勾配分布を特徴ベクトルとする ※手順を覚えてほしいわけではなくて、 このように設計した特徴ベクトルが拡大縮小と回転に対して堅固(変化しにくい)となるかを知ってほしい

SIFT特徴(実装) Python & openCV環境だと上記の3行でSIFT特徴を検出できます ※key1 は特徴点の位置を保持する配列 # SIFT.py img1 = cv2.imread(“画像名.bmp", 0) sift = cv2.xfeatures2d.SIFT_create() key1, des1 = sift.detectAndCompute (img1, None ) Python & openCV環境だと上記の3行でSIFT特徴を検出できます ※key1 は特徴点の位置を保持する配列 ※des1 は特徴点の特徴ベクトルを保持する配列 ※『xfeatures2d.SIFT_create』を書き換えると色々な特徴量を試せます 最近はC++で全部書くのは流行らないみたい. 良い時代ですね。。。

まとめ: SIFT特徴 特徴ベクトルとは何かを解説した SIFT特徴 検出された特徴点同士を比較するため,特徴 点周囲の局所領域をベクトルの形で表すもの. 特徴ベクトルは,SIFT,BRIEF, ORB, SURF, AKAZEなど,沢山の種類がある 特徴ベクトルは目的や対象画像の依存してよ いものを選択すべき SIFT特徴 DoGの極値を特徴点として検出 特徴点のスケールに応じた局所領域を考慮 特徴点周囲の勾配方向に沿って局所窓を回転 局所窓を4分割し,各領域の勾配ヒストグラム を特徴ベクトルとする http://qiita.com/hitomatagi/items/62989573a30ec1d8180b 教科書図11.18

Hough変換

Hough.py Hough変換とは 画像中から直線や円を検出する手法 直線や円の一部が破損・劣化してい ても検出可能

xy空間とab空間 xy空間における直線は 『 𝑦=𝑎𝑥+𝑏 』と表せる 直線の傾き𝑎を横軸・y切片𝑏を縦軸にとるab空間を考える y b 1/2 2 𝑦= 1 2 𝑥+2 直線は点に a x xy空間 abパラメータ空間

xy空間とab空間 y b a x 点 𝑥 0 , 𝑦 0 を通る直線群 𝑦 0 =𝑎 𝑥 0 +𝑏 より 𝑏=−𝑎 𝑥 0 + 𝑦 0 点 𝑥 0 , 𝑦 0 を通る直線群 𝑦 0 =𝑎 𝑥 0 +𝑏 より 𝑏=−𝑎 𝑥 0 + 𝑦 0   y b 2 3 𝑏=−2𝑎+3 (2,3)を通る直線群は パラメータ空間では 直線: 𝑏=−2𝑎+3 に a x xy空間 abパラメータ空間

xy空間とab空間 b y a x 直線𝑦= 𝑎 0 𝑥+ 𝑏 0 上の点群 を通る直線群 𝑦= 1 2 𝑥+2 xy空間 𝑦= 𝑎 0 𝑥+ 𝑏 0 を通る点群は 𝑥 0 , 𝑎 0 𝑥 0 + 𝑏 0 と表せる. この点を通る直線群は 𝑎 0 𝑥 0 + 𝑏 0 =𝑎 𝑥 0 +𝑏 より 𝑏=−𝑎 𝑥 0 + 𝑎 0 𝑥 0 + 𝑏 0   𝑎 0 , 𝑏 0 を通る直線群になる 直線𝑦= 𝑎 0 𝑥+ 𝑏 0 上の点群 を通る直線群 b y 𝑦= 1 2 𝑥+2 上の点群 を通る直線群は 𝑏=−𝑎 𝑥 0 + 1 2 𝑥 0 +2  と表せる 𝑥 0 =0→𝑏=2 𝑥 0 =1→𝑏=−𝑎+ 5 2 𝑥 0 =2→𝑏=−2𝑎+3 𝑦= 1 2 𝑥+2 a x xy空間 abパラメータ空間

xy空間とab空間 直線の傾きを横軸,y切片を縦軸にとるab空間を考えると… 直線 𝑦= 𝑎 0 𝑥+ 𝑏 0  点 𝑎 0 , 𝑏 0 に 点 𝑥 0 , 𝑦 0 を通る直線群  直線 𝑏=− 𝑥 0 𝑎+ 𝑦 0 に 直線 𝑦= 𝑎 0 𝑥+ 𝑏 0 上の点群を通る直線群 点 𝑎 0 , 𝑏 0 を通る直線群に

Hough変換 b a b a 入力 : 画像 出力 : エッジを通る直線群 画像をエッジ画像へ変換 全てのエッジ画素について… 実装時はセルの配列で 表現される Hough変換 入力 : 画像 出力 : エッジを通る直線群 画像をエッジ画像へ変換 全てのエッジ画素について… エッジ画素を通る直線群はab空間で直線に ab空間を小さなセルに分割し、その直線上 のセルの値を1プラスする(投票) 閾値より大きなab空間のセルを検索 し,そのセルの現す直線を出力 直線は複数発見される a b 閾値より多くの投票を 受けたセルを検索

y x 解決法 : 直線を 『𝜌=𝑥 cos 𝜃 +𝑦 sin 𝜃 』と表す 先のアルゴリズムの問題点 𝜌 𝜃 0 , 𝜌 0 ρ 𝜃 θ 傾きaと切片bのとりうる範囲は[-∞, ∞]である 任意の直線を検出するには,無限に広いab空間に投票する必要が… 解決法 : 直線を 『𝜌=𝑥 cos 𝜃 +𝑦 sin 𝜃 』と表す 𝜃は直線の傾きに対応,𝜌は原点から直線の符号付距離を表す 𝜃と𝜌の値の範囲は 𝜃∈ 0, 𝜋 ,𝜌∈ − 𝐴 2 , 𝐴 (Aは画像の対角線長) x y ρ θ 𝜌 𝜃 0 , 𝜌 0 直線 𝜌 0 =𝑥 cos 𝜃 0 +𝑦 sin 𝜃 0 は𝜃𝜌空間では点になる 垂線の足が第3・4象限にあるとき +ρはマイナス +θはθ-π Θ= 350付近のときは θ=170としρはマイナスに 一応証明を… この図より,求める直線は (ρcosθ, ρsinθ) を通り,傾きは ーcosθ/sinθである y –ρsinθ =ーcosθ/sinθ (x-ρcosθ) 両辺にsinθをかけて整理すると 𝜌=𝑥 cos 𝜃 +𝑦 sin 𝜃 が得られる. 𝜃 垂線の足が第3・4象限に あるときρはマイナス

直線を 『𝜌=𝑥 cos 𝜃 +𝑦 sin 𝜃 』と表すと… 点 𝑥 0 , 𝑦 0 を通る直線群 y 𝜌 2 3 (2,3)を通る直線群は 𝜌𝜃 空間では 𝜌=2 cos 𝜃 +3 sin 𝜃   という正弦波になる 𝜃 垂線の足が第3・4象限にあるとき +ρはマイナス +θはθ-π Θ= 350付近のときは θ=170としρはマイナスに 一応証明を… この図より,求める直線は (ρcosθ, ρsinθ) を通り,傾きは ーcosθ/sinθである y –ρsinθ =ーcosθ/sinθ (x-ρcosθ) 両辺にsinθをかけて整理すると 𝜌=𝑥 cos 𝜃 +𝑦 sin 𝜃 が得られる. x xy空間

Hough変換 𝜌 𝜌 𝜃 入力 : 画像 出力 : エッジを通る直線群 画像をエッジ画像へ変換 全てのエッジ画素について… エッジ画素を通る直線群はρθ空間で正弦波に ρθ空間を小さなセルに分割し、その正弦波上 のセルの値を1プラスする(投票) 閾値より大きなρθ空間のセルを検 索し,そのセルの現す直線を出力 直線は複数発見される 𝜌 𝜃 https://www.youtube.com/watch?v=ebfi7qOFLuo 時間があれば動画を紹介

Hough変換で円を検出する 直線とほぼ同じ方法で検出可能 各自考えてみてください

まとめ : Hough変換 𝜌 画像中の直線や円を検出する手法 0. 直線(または円)を数式で表現する 1. 入力画像からエッジ画像を計算 2. 全てのエッジ画素について… パラメータ空間の対応セルの値をプラス1する (直線検出ならρθ空間の正弦波を考える) 3. パラメータ空間において値の大きなセルを検索   そのセルが対応する直線を出力 𝜌 𝜃 ハフ変換画像を見せたい : https://www.google.co.jp/search?q=hough+transform&client=firefox-b-ab&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiF5Iqg6ZfTAhUMwrwKHfsMCeMQ_AUICSgC&biw=1420&bih=815 TODO 円ハフ 一般化ハフ サリエンシーマップ 手作業でハフ変換をしてみる? 結構大切かも??