ガボールフィルタのソースを表示
←
ガボールフィルタ
ナビゲーションに移動
検索に移動
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[File:Gabor-ocr.png|thumb|2次元ガボールフィルタを漢字に作用させた例。左上から時計回りに原画像、搬送波の方向を45°づつ順に変えた4つのフィルタの作用結果、及びそれら4つのフィルタ結果を重ね合わせた図を表す。]] '''ガボールフィルタ'''({{Lang-en-short|Gabor filter}})は、画像処理の[[テクスチャー解析]]等に用いられる[[線型性|線型]][[フィルタ回路|フィルタ]]の一種。(2次元のガボールフィルタでは)画像の各点周りの局所領域において、方向毎に特定の周波数成分を抽出することができる。 [[虹彩認識]]や[[指紋認証]]にも応用されている他、哺乳類の脳の[[視覚野#一次視覚野 (V1) |一次視覚野]]にある単純型細胞の活動をモデル化できることが示されている。名称は[[ガーボル・デーネシュ]]に因む<ref>{{cite journal |title=Theory of communications |author=D. Gabor |journal=J. IEE London |volume=93 |pages=429-457 |year=1946}}</ref>。 == 定義 == [[ファイル:Rgabor.png|thumb|right|2次元ガボールフィルタのインパルス応答の例]] 細部が異なる種々の定義があるが、基本的には[[ガウス関数]](ガウシアンエンベロープとも呼ばれる)と[[三角関数]]([[搬送波]]とも呼ばれる)の積として定義される<ref name=hara2017>{{cite book |title=画像認識 |series=機械学習プロフェッショナルシリーズ | publisher=講談社 |year=2017 |author=原田達也}}</ref><ref>{{cite web|url= http://mplab.ucsd.edu/tutorials/gabor.pdf|title=Tutorial on Gabor Filters|last=Movellan|first=Javier R.|accessdate=2008-05-14}}</ref><ref name=VL00> {{cite web|url= http://cnx.org/content/m12493/latest/|title=Texture Segmentation Using Gabor Filters |last=Leveseque |first=Vincent |date=2000-12-06 |accessdate=2008-05-14}}</ref>: <math>\boldsymbol{x}\in\mathbb{R}^n (n=1,2)</math>の函数であるガボールフィルタ<math>g</math>は、<math>w</math>を[[ガウス関数]]、<math>s</math>を[[三角関数]]として {{Indent|<math>g(\boldsymbol{x}; A, \boldsymbol{u}, P) = K \exp(iP) w(\boldsymbol{x}; A) s(\boldsymbol{x}; \boldsymbol{u}) </math>}} と定義される。 ここで<math>K</math> はガウシアンエンベロープの強度のスケール、<math>A</math> はガウシアンエンベロープのスケールや方向を指定する線形変換、<math>\boldsymbol{u}</math>は搬送波の(空間)周波数と方向を表す波数ベクトル、<math>P</math> は位相オフセットを表す。 <math>w</math>と<math>s</math>の具体的な形は、1次元の場合、通常スケールパラメータ<math>\sigma</math>により {{Indent|<math>w(x; \sigma) = \exp\left(-\frac{x^2}{2\sigma^2}\right)</math>,}} {{Indent|<math>s(x; u) = \exp\left(2\pi iux \right) </math>,}} 2次元の場合は、ガウシアンエンベロープの方向<math>\theta</math>と軸毎のスケールパラメータ<math>\sigma_x, \sigma_y</math>により {{Indent| <math>w(x, y; A(\theta, \sigma_x, \sigma_y)) =\exp\left( -\frac{x'^2 +y'^2}{2} \right)</math>,}} {{Indent|<math>s(x, y; \boldsymbol{u}) = \exp\left(2\pi i (x,y) \cdot \boldsymbol{u}\right) </math>}} と表す。ここで<math>(x', y')=(x, y)A(\theta, \sigma_x, \sigma_y)</math>で、 {{Indent|<math>A(\theta, \sigma_x, \sigma_y)= \begin{pmatrix} \cos\theta & -\sin\theta\\ \sin\theta & \cos\theta \end{pmatrix} \begin{pmatrix} \frac{1}{\sigma_x} & 0\\ 0 & \frac{1}{\sigma_y} \end{pmatrix} </math>}} である。実部と虚部に分けた形<ref name=VL00/>や、更にガウシアンエンベロープの方向と波数ベクトルの方向とを一致させた形(<math>\boldsymbol{u} = (f/\sigma_x)(\cos\theta, \sin\theta)</math>)も用いられる: {{Indent| <math>\operatorname{Re}g(x, y) =K \exp\left( -\frac{x'^2 +y'^2}{2} \right) \cos(2\pi fx' + P)</math>,}} {{Indent| <math>\operatorname{Im}g(x, y) =K \exp\left( -\frac{x'^2 +y'^2}{2} \right) \sin(2\pi fx' + P)</math>,}} == 応用 == [[画像処理]]では通常、異なる周波数、検出方向のガボールフィルタで構成される[[フィルタバンク]]の形でよく利用される(これを画像に[[畳み込み |畳み込ん]]で得られる出力をガボール空間という)。具体的事例は以下: *[[虹彩認識]]<ref name=VL00/>や[[指紋認証]]、顔の表情の認識<ref>{{cite book |last1=Lyons|first1=M.|last2=Akamatsu|first2=S.|last3=Kamachi|first3=M.|last4=Gyoba|first4=J.|year=1998|title=Coding facial expressions with Gabor wavelets |pages=200–205|doi=10.1109/AFGR.1998.670949|isbn=0-8186-8344-9|ol=OL11390549M|url=https://zenodo.org/record/3430156}}</ref>。 *髪型のモデリング<ref name=Chai2012SingleviewHM>{{cite journal | author = Menglei Chai and Lvdi Wang and Yanlin Weng and Yizhou Yu and Baining Guo and Kun Zhou | authorlink = | coauthors = | title =Single-view hair modeling for portrait manipulation | journal =ACM Trans. Graph. | year=2012 | volume =31 | issue =116 | pages =1-8 | publisher = | url =http://www.ncbi.nlm.nih.gov/pubmed/3437332 | doi =10.1145/2185520.2185612 | id = | accessdate = }}</ref>。 *[[脊椎]]の骨梁(trabecular bone)における方向性の分布の分析<ref>{{cite journal | author = C.M.Gdyczynski, etal | year = 2014 | title = On estimating the directionality distribution in pedicle trabecular bone from micro-CT images | url = | journal = Journal of Physiological Measurements | volume = 35 | issue = 12| pages = 2415–2428 | doi = 10.1088/0967-3334/35/12/2415 | pmid = 25391037 | bibcode = 2014PhyM...35.2415G }}</ref>。 *哺乳類の脳の一次[[視覚野]]にある[[単純型細胞]]の活動のモデル<ref>{{cite journal | author = Jones JP, Palmer LA | authorlink = | coauthors = | title =An evaluation of the two-dimensional Gabor filter model of simple receptive fields in cat striate cortex | journal =J Neurophysiol | volume =58 | issue =6 | pages =1233-1258 | publisher = | date =Dec 1987 | url =http://www.ncbi.nlm.nih.gov/pubmed/3437332 | doi = | id = | accessdate = }}</ref><ref>{{cite journal | last1 = Marčelja | first1 = S. | year = 1980 | title = Mathematical description of the responses of simple cortical cells | url = | journal = Journal of the Optical Society of America | volume = 70 | issue = 11| pages = 1297–1300 | doi = 10.1364/JOSA.70.001297 | pmid = 7463179 | bibcode = 1980JOSA...70.1297M }}</ref><ref>{{Cite journal |last=Daugman|first=John G. |date=1985-07-01 |title=Uncertainty relation for resolution in space, spatial frequency, and orientation optimized by two-dimensional visual cortical filters|journal=Journal of the Optical Society of America A|language=en|volume=2| issue=7|pages=1160–9|bibcode=1985JOSAA...2.1160D|citeseerx=10.1.1.465.8506| doi=10.1364/JOSAA.2.001160| issn=1084-7529|pmid=4020513}}</ref> 。 *スキャンした文書の中のテキスト部分の抽出(一般にテキスト部分が、画像部分に比べ相対的に高周波数成分が多いことを利用している)<ref>{{Cite journal| last=Pati|first=Peeta Basa|last2=Ramakrishnan|first2=A.G.|date=July 2008|title=Word level multi-script identification|url=|journal=Pattern Recognition Letters|language=en|volume=29|issue=9|pages=1218–1229|doi=10.1016/j.patrec.2008.01.027|issn=0167-8655}}</ref><ref>{{Cite journal |last=Raju S|first=S.|last2=Pati|first2=P.B.|last3=Ramakrishnan|first3=A.G.|date=2004|title=Gabor filter based block energy analysis for text extraction from digital document images|url=http://eprints.iisc.ac.in/490/1/Gabor_Filter_Based_Block_Engery_Analy...pdf|journal=First International Workshop on Document Image Analysis for Libraries, 2004. Proceedings.|location=Palo Alto, CA, USA|publisher=IEEE|volume=|pages=233–243|doi=10.1109/DIAL.2004.1263252|isbn=978-0-7695-2088-9|lccn=2003116308|ol=OL8067708M}}</ref><ref>{{cite journal |last1=Raju|first1=S. Sabari|last2=Pati|first2=P. B.|last3=Ramakrishnan|first3=A. G.|year=2005|title=Text Localization and Extraction from Complex Color Images|url=https://archive.org/details/advancesvisualco00bebi_320|journal=Lecture Notes in Computer Science|volume=3804|pages=486–493|doi=10.1007/11595755_59|isbn=978-3-540-30750-1|issn=0302-9743|lccn=2005936803|ol=OL9056158M}}</ref><ref>S Sabari Raju, P B Pati and A G Ramakrishnan, “Text Localization and Extraction from Complex Color Images,” ''Proc. First International Conference on Advances in Visual Computing (ISVC05)'', Nevada, USA, LNCS 3804, Springer Verlag, Dec. 5-7, 2005, pp. 486-493.</ref>。 *シーンを記述する低次元の大域特徴<ref name=hara2017/><ref>{{cite journal | author = Oliva, A., Torralba | authorlink = | coauthors = | title =Modeling the Shape of the Scene: A Holistic Representation of the Spatial Envelope | journal =International Journal of Computer Vision | year=2001 | volume =42 | issue = | pages =145-175 | publisher = | url = | doi =10.1023/A:1011139631724 | id = | accessdate = }}</ref>。 ガボールフィルタはガボール[[ウェーブレット]]と直接関係しており、ガボールフィルタに回転や膨張を加えることで設計されるが、拡大は非常に時間がかかるため、ガボール[[ウェーブレット]]では適用されない{{要出典|date=2020-06-21}}。 == 実装例 == *[https://scikit-image.org/docs/stable/api/skimage.filters.html#skimage.filters.gabor scikit-imageにおける実装] *[[MATLAB]] <syntaxhighlight lang="matlab"> function gb=gabor_fn(sigma_x,sigma_y,theta,lambda,psi,gamma) sz_x=fix(6*sigma_x); if mod(sz_x,2)==0, sz_x=sz_x+1;end sz_y=fix(6*sigma_y); if mod(sz_y,2)==0, sz_y=sz_y+1;end [x y]=meshgrid(-fix(sz_x/2):fix(sz_x/2),fix(-sz_y/2):fix(sz_y/2)); % Rotation x_theta=x*cos(theta)+y*sin(theta); y_theta=-x*sin(theta)+y*cos(theta); gb=exp(-.5*(x_theta.^2/sigma_x^2+gamma^2*y_theta.^2/sigma_y^2)).*cos(2*pi/lambda*x_theta+psi); </syntaxhighlight> == 脚注 == {{Reflist|2}} == 関連項目 == * [[ガーボル・デーネシュ]] == 外部リンク == * [http://www.brain.kyutech.ac.jp/~morie/Topics/gabor.html 初期視覚機能をモデル化したガボールフィルタLSI] 九州工業大学大学院生命体工学研究科森江研究室 *[http://matlabserver.cs.rug.nl Web-enabled image processing operators] 2次元のガボールフィルタを画像に適用した結果を見ることができる。 {{DEFAULTSORT:かほるふいるた}} {{Math-stub}} [[Category:制御理論]] [[Category:信号処理]] [[Category:画像処理]] [[Category:数学に関する記事]]
このページで使用されているテンプレート:
テンプレート:Cite book
(
ソースを閲覧
)
テンプレート:Cite journal
(
ソースを閲覧
)
テンプレート:Cite web
(
ソースを閲覧
)
テンプレート:Indent
(
ソースを閲覧
)
テンプレート:Lang-en-short
(
ソースを閲覧
)
テンプレート:Math-stub
(
ソースを閲覧
)
テンプレート:Reflist
(
ソースを閲覧
)
テンプレート:要出典
(
ソースを閲覧
)
ガボールフィルタ
に戻る。
ナビゲーション メニュー
個人用ツール
ログイン
名前空間
ページ
議論
日本語
表示
閲覧
ソースを閲覧
履歴表示
その他
検索
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
特別ページ
ツール
リンク元
関連ページの更新状況
ページ情報