hirax.net::Keywords::「フィルター」のブログ



1999-02-27[n年前へ]

画像ノイズ解析について考える 

考える理由

 画像ノイズ解析を目的として、2次元フーリエ変換を用いて周波数解析をすることが多い。かねがね、このやり方について疑問を感じていたので少し考えてみたい。

 その疑問とは次のようなことである。

  • 通常の2D-FTでは、入力データ全領域での周波数解析を行う。従って、単発のパルスのようなノイズはバックグラウンドに埋もれてしまい、結果にはなかなか出てこない。
  • 同じ理由で、2D-FTでは位置と周波数解析を同時に行うことができない。(もちろん、短時間フーリエ関数を使えば、そのような測定は行うことができる。)
  • また、ホワイトノイズのようなフラットな周波数特性を持つノイズもバックグラウンドを押し上げるだけの効果しか持たないため、解析をしづらい。
 そこで、今回は単純な画像に対して、2D-FTと2D-離散Waveletの比較を行うことで、2D-FTを用いた「画像ノイズ解析」の問題について考える。

2D-FTと2D-Waveletの例

 はじめに、2D-FTと2DWaveletの例を挙げる。まずは2D-FTである。
2D-FTの例(左から原画像、2D-FT結果、2D-FT結果の鳥瞰図)
 左の原画像は45度のスクリーン角のラインである。2DFTの結果にはその角度方向にピークがいくつか並んでいる。それぞれのピークの中央からの距離が周波数を示している。それはX,Y方向いずれについても言える。今回の場合はX,Y方向のスクリーンの周期が等しいため、2DFTの結果でも45度方向になっているのである。
このように、2D-FTの結果というのは周波数(X,Y両方向)と振幅がわかる。ここでのスクリーン角のような周期性を持つものの解析にはフーリエ解析というのは極めて有効である。店で見かけるインクジェットプリンターもヘッドの移動による周期ムラが激しいが、このようなムラに対してフーリエ変換を用いた周波数解析を行うのは正当であり、有効だろう。

 それでは、同じ画像に2D-Waveletをかけてみる。2D-Waveletの結果は位置と周波数強度分布情報(ホントは違うのだが)が両方出てくる。位置情報が2次元で周波数強度分布情報が1次元であるから、合わせて3次元である。そのため、表示に一工夫いる。
 第一段階として高周波成分から調べてみる。すぐにこの結果の意味がわかるだろうか?

2D-Wavelet例(左が原画像、右が一段階Waveletをかけた結果)
かなり判りづらい。この右の結果は4つの領域にわかれているが、以下の表のような意味を表している。また、いずれも灰色の部分は強度が弱く、白と黒が強度が強いことを示している。
高周波のX成分高周波成分
低周波成分高周波のY成分
 低周波成分が原画像と同じようであるのがわかると思う。これは2DFTと違い、Waveletでは位置情報もそのまま保持されているからである。次に、この低周波成分に対して、もう一段Waveletをかけるとこうなる。
 右上から左下への対角線上のが周波数成分を示し、これで周波数成分にして3分解できたことになる。右上が一番高周波成分。その左下が次の高周波成分。右下が低周波成分である。
 もう何分割かしてみる
 このようにして、画像内での位置と周波数成分が両方ともわかる。

 なお、フーリエ変換では基底関数としてSinが用いられるが、Wavelet変換では基底関数としていろいろな関数を使うことができる。今回はDaubechiesの4次のものを用いている。下がその形である。

Daubechiesの4次のフィルター

ドットのノイズを解析してみる

 それでは、今回の本題に入る。以下が原画像である。左が「2つの大きなドットからなる」画像であり、右がそれにノイズの加わった「ノイズ」画像である。ここでノイズはホワイトノイズを加えているつもりである。ドットは周期性を持つデータだが、ノイズ自体は周期性を持たない所がミソである。また、ここで言う「ノイズ」とは現実の現象とは何ら関係がない。単なる例えである。
ドット画像(左が原画像、右がノイズを加えた画像)
 まず、この2つの画像に対して、それぞれ2D-FTをかける。
2次元離散フーリエ変換を行った結果
 このグラフではXY軸とも-πからπまでの領域で示している。中央からの距離が周波数を示しており、明るいほどその周波数帯の振幅が大きいことを示している。つまり、任意の周波数帯の強度がわかる。
 右のノイズの加わった画像の2DFTの結果では、広い周波数領域で強度が上がっている。しかし、下の鳥瞰図で示した(私は立体が好きなのだ)方でもわかると思うが、バックグラウンドが持ち上がっているだけである。いずれにせよ、あまり左右の間で違いはない。今回のような64x64の画像ではなく、もっと大きい画像ではその違いははより識別不能になる。
2次元離散フーリエ変換の結果を鳥瞰図で示したもの
 さて、次に2D-Waveletで同じように計算をしてみる。下が計算結果である。どうだろうか、ノイズ(位置も周波数も)が一目で判るようには思えないだろうか?
2D-Waveletによる解析結果(左がノイズ無し、右がノイズ有り)
 今回は、自分の頭を整理するために、ただ2D-wavelet変換をかけてみた。まだまだ話しは続くのである。

1999-06-27[n年前へ]

それを決めるのは誰だ? 

見えない「有害サイト指定」の疑惑



 今回は全て三人称で語られるハードボイルドな話である。あるサラリーマン、ここでは「彼」と呼ぼう、の実験と、考えを書く。

 今回の話の前段階として、
リモートカメラから世界をノゾこう!-Macintosh用カメラ制御プログラムを作る- (1999.06.26)
がある。この話の中に
MAQ?MAK?MAC! ( http://www.maqmakmac.com/)
へのリンクがある。ところが、彼の職場からはそのサイト、MAQ?MAK?MAC!を見ることができないというのだ。彼は会社内のLANとは別のルートでMAQ?MAK?MAC!へアクセスすることが多かったので、なかなか気づかなかったのだ。


www.maqmakmac.comは表示されない

 彼の頭にある疑いが生じた。彼はその疑念を確かめるために、tracerouteでwww.maqmakmac.comのIPアドレスを直接調べることにした。彼の指はキーボードを叩く、
tracert www.maqmakmac.com (Windowsマシンである)

tracerouteでIPアドレスを調べた

これでIPアドレスはわかった。彼は職場のマシンからwww.maqmakmac.comのIPアドレスを直接指定した上でアクセスを試みた。すると、彼の想像通りWEBの内容がきちんと表示された。「DNSがうまく動いていないないんじゃないの」という人がいるかもしれないが、そうではない。他のアドレス(後述する例外を除いて)に関しては問題ないのである。

IPアドレスを指定してやるときちんと表示される

彼の(疑いつつも)立てた仮説: www.maqmakmac.comを彼の勤務する会社は「有害サイト」として認識し、社内からwww.maqmakmac.comへのアクセスをブロックしている。

 もうすこし、判りやすく説明するとこうなる。
 彼の勤務する会社内のLANから社外へのGateWay内で登録された「有害サイト」のアドレス(URL)を検知して、アクセスをブロックするというシステム(URL検出法)を用いているのである。もしも、会社内からwww.maqmakmac.comというアドレスへのアクセス要求があったら、「駄目だよ」とその要求を蹴ってしまうのである。
 しかし、www.maqmakmac.comというアドレスでフィルターをかけているので、IPアドレスを直接指定してやると、フィルタを通りぬけて、アクセスをすることができるのである。

彼の知る限りでは、明らかに彼の会社内で全社的にブロックされてしまうアドレスが確かにある。それが恐らく参考になるだろう。例えば、こういったサイトである。

明らかにブロックされてしまうサイトの場合

おやおや、画面表示が少し異なる。ということは、意図的にブロックしているわけではないのか? あるいは、ブロックしている個所が違うのか? これだけではよくわからない。集まってきた情報によると、他の地域の部署ではwww.maqmakmac.comに関しては読みに行けるようだ。

URL規制プログラムで有名な
http://www.cyberpatrol.solution.ne.jp/
の指定する例によれば、「有害サイト」は

  • 暴力/精神的、肉体的(画像または文章)
  • 部分的ヌードと芸術
  • 全裸
  • 性的行為(画像または文章)
  • 下品、残酷な描写(画像または文章)
  • 差別、偏見(画像または文章)
  • 悪魔崇拝、カルト(画像または文章)
  • 麻薬関係(画像または文章)
  • 武器、過激派(画像または文章)
  • 性教育(画像または文章)
  • ギャンブル、違法行為(画像または文章)
  • アルコール、タバコ(画像または文章)
であるとしている。本WEBも含めて個人が開いているサイトは「偏見」に関しては多少なりとも出るのは当然ではある。それも個性の一つだからだ。偏らない見方などありえない。しかし、それは問題になるような程度ではないと思う。また、そういう偏りを排除して何かが得られるとは思えない。

こういったURLアクセス規制は今回の例に留まらない。どこの組織でもあることなのかもしれない。こういったネットワークにからむ問題についてはもう少しオープンにして考える必要があるのではないだろうか。

 彼はタバコを深く吸い込み、事件簿を閉じて、そして呟いた。「これ以上の真偽は確かめようがない...」

1999-10-07[n年前へ]

CCDカメラをバラせ! 

モアレは自然のClearText

 あまり、「できるかな?」では工作の話題が出ていない。いや、もしかしたら全然出ていないかもしれない。そこで、手元に8mmビデオのジャンクがあったので、こいつをバラしてみることにした。そして、これまで「できるかな?」に登場しているような話に関連していることがないか調べてみるのだ。いや、本当は嘘で計画済みの伏線張りまくりの話である。もしかしたら、勘のいい方はもう話の風向きはもうおわかりかもしれない。

 さて、今回分解するカメラはかなり前(といっても数年前)のモデルである。まずは、分解してみよう。

1 8mmビデオカメラのCCD&レンズ部分.
2. 方向を変えるとこんな感じ
3. 正面のレンズを外す
4. もっとばらす。中央にCCDチップ部分がある。
5. これがCCD部分。
6. CCD前部のフィルターを外す
7. CCD素子を正面から見ると
8. もっともっと拡大するとこうだ

 5.の写真でわかるように、CCD前部にはフィルターが着けてある。(当初はこれを赤外線フィルターだと考えていた。なので、このフィルターを外してやると、画質はとんでもないことになる。しかし、その上で赤外線投光器を装着すれば面白いカメラになりそうである。が、用途を間違えるととんでもないことになるので、今回はやらない。が、いつかやってみようとは思っている。もちろん、私は品行方正がモットーであるので、悪用はするわけがない。もちろんである。)と、書いたがその後、「これは赤外線とは逆のエイリアシング防止用のハイカットフィルタだろう」というご指摘を頂いた。フィルターが青色だったので、単純に赤外線カット用途かと思い込んでいたが、どうやら違うらしい。指摘の文章をそのまま、使わせていただくと「CCDは空間サンプリング素子であり、サンプリング周期(ピクセルのピッチ)よりも短い波長の光が入ると、エイリアシング(折り返しノイズ)を生じて擬似カラー、干渉縞を生じてしまいます。これを避けるためのハイカットフィルタです。」とある。その後、知人から頂いた資料(勉強しなおせ、ということだろう)を読むと、水晶板をだぶらせて2重像にすることにより、細かい解像ができないようにしているローパスフィルターであるようだ。空間周波数のローパスである。今回のCCDでは3層構造になっており、中央の層にのみ色がついている。反省がてら、次回にもう少し調べてみようと思う。

 ところで、7.などの拡大画像で周辺部が丸くケラれているのがわかると思う。これは、

と同じく実体顕微鏡の接眼部からデジカメで撮影を行っているからである。デジカメはこういう時に何より重宝する。さて、デジカメと言えば、こちらも同じくCCDを用いているわけである。

 さて、8.の拡大画像を見ると、このカメラのCCDのカラーフィルターは補色方式(CMYG=シアン、イエロー、マゼンダ、グリーン)であることがわかる。原色タイプでないところを見ると、どうやら感度重視の製品であるようだ。また、この拡大画像などを眺めると、

で調べた液晶のフィルターと同じような構造であることがわかる。よくストライプ模様の服を着ている人をCCDビデオカメラで撮影すると、モアレが発生することがあるが、それはこういったフィルターの色の並びに起因しているわけである。フィルターの周期とストライプの模様が干渉してモアレが生じてしまうのである。

 最近のものではソフト的にかなりの処理をしてモアレが出にくいようにしているし、CCDも高解像度化が進んでいるので、なおさら出にくい。私が使用している富士写真フィルムのFinePix700でそのようなモアレを出そうと思ってみたが、なかなか出なかった。むしろ、ピントを正確に合わせることができなかった。それでも、何とか白黒の縦線模様を撮影して、モアレを出してみたのが下の写真である。左がオリジナルで、右がそれに強調処理をかけたものである。

FinePix700で白黒の縦線模様を撮影した際のモアレ
(左上から右下へ斜めにモアレが出ている)
オリジナル
左に強調処理をかけたもの

 モアレが発生しているのがわかると思う。さてさて、こういう白黒ストライプをよく眺めてみれば、

で登場したこの画像を思い出すはずだ。
ノーマル
ノーマル斜線
カラーシフトを用いた斜線

 そう両者ともまったく同じ斜線である。そもそも、前回作成したパターンは今回への伏線であったのである。白黒の縞模様を撮影しているのであるから、普通は白黒模様しか撮影されない。しかし、モアレが発生している場合というのは、CMYGからなる1画素の中でのさらに細かな位置情報が判るのである。先ほどのCCDの色フィルターの拡大写真のような配置になっていることを知っているのであるから、その配置も考慮の上処理してやれば良いのである。もちろん、白黒の2値からなる画像を撮影しているという前提条件は必要である。その前提条件さえつけてやれば、モアレが生じていることを逆に利用して、高解像処理ができるはずだ。

 例えば、

CCDのCMYGからなる一画素
GreenMagenda
YellowCyan

という画素のGreenだけ出力が大きかったとすると、グレイ画像であるとの前提さえ入れてしまえば、1画素のさらに1/4の領域まで光が当たっている位置を推定できるということになる。もちろん、実際のカメラでも4色の間で演算をしてやり、ある程度の推定はしているだろう。しかし、前提条件を入れてやれば、より高解像度が出せるだろう。

 ClearTextの場合は白黒2値の文字パターン、あるいはハーフトーンという前提条件をつけて液晶に出力を行った。今回は、白黒2値の文字パターン、あるいはハーフトーンという前提条件をつけて、CCDからの出力を解釈してやれば良いわけである。CCDカメラにおいては自然が自動的にカラーシフト処理をしてくれるのである。そのカラーシフト処理からオリジナルの姿を再計算してやれば良いわけである。もっとも、これらのことは光学系がきちんとしている場合の話である。

 今回考えたような、そういった処理はもうやられていると思う。FinePix700でも撮影モードに

  • カラー
  • 白黒
の2種類があるので、もしかしたらそういう処理が含まれているのかもしれないと思う。それでは、実験してみよう。白黒の方がキレイに縞模様が撮影できているだろうか?
FinePix700で白黒の縦線模様を撮影した際のモアレ
(左上から右下へ斜めにモアレが出ている)
白黒モードで撮影
カラーモードで撮影

 うーん、白黒のほうがキレイなような気もするが、よく判らない。念の為、強調処理をかけてみる。もしかしたら、違いがわかるかもしれない。

上の画像に対して強調処理をかけたもの

 うーん、これではますます違いがよくわからない。これは、次回(すぐにとは限らないが)に要再実験だ。ただ使っている感覚では、まずピントがきちんと合わないような気がする。うーん、難しそうだ。それに、今回の実験はローパスのフィルター部分をなくしたものでなければならなかったようにも思う。ならば、FinePix700を使うのはマズイ(直すのメンドクサイから)。どうしたものか。

1999-10-23[n年前へ]

新聞記事をデコンボリューションしよう 

プロバイダーの実効アクセス数を知りたい

 今回は、新聞記事の内容を再確認してみたい。

 今回のタイトルからすると、「新聞記事のアミ点をどうにかしたい」という話だろう、と思う人もいるだろうが、そういう話ではない。そういう話はいつかまた別の機会にやってみたいとは思っている。とりあえず、今回は別の話である。

 新聞記事、特にネットワークに関する記事などには、時々どうにも首を傾げてしまうものがある。例えば、.comドメインと.jpドメインの数の差から、日本とアメリカのネットワークについて語るような記事などである。日本にサーバーがあるから、*.jpドメインと決めかかっているような記事だ。

 そういう新聞記者のフィルターがかかっている記事(別にそのことが悪いとは私は思わない)を、自分なりに再構成して、再確認してみたいのである。

 今回は、朝日新聞の10月20日の「インターネット接続サービスの会員数」というグラフに関して調べてみたい。この記事は富士通系のniftyとInfoWebが一体化することに伴い、インターネット接続サービスがどう変化していくか、ということに関する記事である。

朝日新聞の10月20日の「インターネット接続サービスの会員数のグラフ」
 本題とはまったく関係なのであるが、左の写真ではモアレが発生している。本来は、下のようなアミ点画像である。

今回のタイトルからすると、「新聞記事のアミ点をどうにかしたい」という話に思えるかもしれないが、全く関係ないのである。念の為。

 このグラフは一位のniftyと三位のInfowebが合併して、巨大なネットワーク接続サービスが生まれると言いたいようである。また、一位のniftyと二位のBiglobeはとにかく巨大で、三位以降とずいぶんと差があるように思えてしまう。

 しかし、niftyの「インターネット接続サービス」に関する数字として、この300万人弱という数字を出しても良いものだろうか? 確かに、nifty経由でインターネットにつなぐ人もいるだろうが、その数ははるかに少ないのではないだろうか?ちょっと数字の使い方が違うように思う。
 nifty会員であるとしても、それはインターネット接続サービスを使用しているという意味とは違うだろう。私もniftyには加入しているが、nifty経由でインターネットに接続することはほとんどない。ただ会員であるだけで、インターネット接続サービスは使っていないかもしれない。一体、nifty会員のどれだけがnifty経由でインターネットを使っているのだろうか?

 また、一位・二位と三位以降の差はそれほどあるのだろうか? ネットワーク上で見かけるアドレスのほとんどがniftyかBiglobeであるような気がしないのである。

 こういった疑問を、HIRAX.NETへの最近1ヶ月のログ解析の結果から調べて見ることにした。つまりは、「私と好みが似てる人」の"*.ne.jp,*.or.jp, *.ad.jp"バージョンである。何しろ、これまで*.ac.jpや*.co.jpの解析ばかりであったので、たまには他のものもしてみたかったのである。だから、今回の話は単なる雑談なのである...
 HIRAX.NETはアクセス数が多いサイトではない。だから、得られる結果は全然正確なものではない。また、母集団自体が偏りを持っている恐れは十分にある。いや、あるだろうとさえ思っているのである。偏りがあるならあるで結構である。

 それでは、"*.ne.jp, *.ad.jp,s *,or.jp"からの最近1月のアクセス数(Page)のグラフを下に示す。これは、HIRAX.NET内の全ページに対するものである。したがって、HIRAX.NET内のページを沢山よんだ人がいたならば、その人の属するプロバイダーはより多くの数の「アクセス数(Page)」をカウントされることになる。

*.ne.jp, *.ad.jp,s *,or.jpからのアクセス数(Page)

 ログ解析をした中で"*.nifty.ne.jp"からのアクセスは一つも見つからなかった。これは、

  • niftyからインターネット接続でHIRAX.NETへ訪れている人が一人もいない
  • niftyからインターネット接続でHIRAX.NETへ接続した場合に、nifty.ne.jpからのアクセスという風には記録されない
という可能性がある。しかし、そのうちのどちらであるのだろう? と、書いておけば知ってる人が教えてくれるかもしれない...

 さて、ここからは追記である。期待通り協力してくれた方がいた。やはり、書いてみるものである。協力者:べっきさんが接続してくださった。そのniftyからつないだ状態では、HIRAX.NETにはfrom ***.ppp.infoweb.ne.jpと記録されていた。ということは、infoweb経由のようである。すると、nifty+infowebでもso-netに負けているということになる。(追記 ここまで)

 先の朝日新聞の記事と重なるのは、Biglobe(mesh.ad.jp)とso-net、InfoWeb位である。

 so-netは朝日新聞の記事のグラフよりも、他と比較して、多いように感じる。so-netのユーザーは比較的にインターネット環境を活用している人が多いのだろう。まさか、PostPetのせいではないだろうな? 恐るべし、So-net。

 さて、NEC系であるBiglobeはここではmesh.ad.jpと表示されているようだ。Biglobeも先の朝日新聞の記事ほどアクセス数は多くないように思われる。また、富士通系であるInfowebのアクセス数もそ朝日新聞の記事よりは少ない。もしかしたら、富士通やNEC系のプロバイダーに加入している人というのは、

  1. コンピューターを買う
  2. その製造元系のプロバイダーに加入
  3. だけど、あんまり使わない
という行動パターンなのかもしれない。何しろ、パソコンショップでも「タッチおじさん」や「バザールでこざーる」の景品を欲しいがために、パソコンを買いたがる人もいる位だ。バリバリ使うとはとても思えない。

 今回のグラフを見る限りにおいては、一位・二位が三位以降を引き離しているという感じではないし、富士通、NECが主催するインターネット接続サービスが活用されているという感じでもないようだ(少なくとも本WEBに関する限りは)。しかし、Sony主催のSo-netは活用されているようなのだ。

 強引ではあるが、「富士通、NEC、Sonyの主催するネットワーク接続サービスの活用度の違いに何か意味はないのだろうか?いや、きっとある。」と思ってしまう(少しだけだけど...)。

 今回は、とりあえず偏見出まくりの結論で終わってしまうのでも、オチもない...あぁ、しかもInfowebやBiglobeに入っているパワーユーザーがいたらどうする気なのだ。いや、きっといるぞ。先にゴメンと言っておこう。だから、抗議メールは遠慮のココロだ。


1999-11-05[n年前へ]

草迷宮・空間'99 

ネコの目から見た世界




 「猫の視点から世界を眺める」という本や漫画は実に多い。漱石の「我輩は猫である」を始め、大島弓子の「綿の国星」がそうだ。そして、今回のタイトルになっている内田善美の「草迷宮・草空間」もそうだ。

 犬を擬人化して語られる物語もある。例えば、「のらくろ」を始めアニメの「名探偵ホームズ」もそうだ。しかし、私としては「猫の視点」で語られる物語に軍配を上げたい。どうも、犬の視点から語られる物語には、主観性が感じられないのである。好きではないのだ。

 その猫と犬の違いは、ドラえもんとヤッターワンの違いといっても良いだろう。このニュアンスが伝わるかどうかは多いに疑問であるが。

 さて、HOT WIRED JAPAN に

という面白い記事があった(技術的には)。感覚的な部分としては、何故かツマラナイと感じる部分もあるのだが、技術的には興味を感じる。

ネコの視床にある177の神経細胞に電極を取り付け、神経細胞の興奮パターンからネコが見ている画像を再構成した、という研究報告である。

 そのオリジナルの報告は

で読むことができる。ネコ好きの人には絶対できない実験だろう。

 せっかくなので、「できるかな?」でもネコが見ている世界モドキの画像を作成してみることにした。先のWEBを参考にして、モドキを作ってみる。以下の手順を納得する(あるいは納得しない)ためには、先のWEBを読むことが前提となる。

 まずは、ネコの神経細胞の視野に対応する電極位置を確認してみる。

オリジナルの神経細胞の電極位置
 視野に対応する電極の位置。赤はその内部に正の反応を持ち、青はその外部に正の反応を持つ。(ここらへん、私の理解は少しアヤシイ)

 この画像から、赤と青に対応する部分を抽出してみる。

赤と青(正の反応を持つ電極と、負の反応を持つ電極)の位置を抽出する

Red

Blue

 うーん、Blueの方はずいぶんと取りこぼしが多い。それは、赤は丁寧にやったんだけど、青は雑にやったからである。青は、あまり重要でない(と私が考えた)からである。その理由は赤と違ってあまり狭い空間分布を持たないからである。

 次に、Redと(Blueを反転したもの)を足して(黒を正として)、ガウス分布のぼかしをかける。青で示された電極を反転させたのは、それが負の反応を持つ電極であるからだ。
 その計算結果がネコの視覚モドキのフィルターである。

Redと(Blueを反転したもの)を足して(黒を正として)、ガウス分布のぼかしをかけたもの

 この画像と任意の画像をPhotoshopで「スクリーン演算」するのが、「できるかな?」的ネコ視覚フィルターである。

 ためしに、適当な画像を見てみよう。海沿いにいる人物を「もしネコが見ていたら、どう見える?」という場合である。

オリジナル画像と「できるかな?」的ネコ視覚フィルターをかけた画像

 こう見えるのだ(保証はしないけど)。

 「ネコが私を見るとどうなるか?」と思ったことは、何回かあるが、まさかその答が手に入るとは思わなかった。科学、恐るべし、だ。






■Powered by yagm.net