画像ピラミッドと顕著性マップをCanvasで実装する【画像処理100本ノック】
約 2 分
目次
概要
Q.73〜76では、画像の縮小・拡大から複数スケールの表現を作り、スケール間の差を使って 高周波成分と顕著性マップを求めます。
縮小してから拡大する(Q.73)
画像を小さくして元のサイズへ戻すと、細かな情報が失われます。元画像と見比べることで、 解像度の低下が輪郭や模様へ与える影響を確認できます。
ピラミッド差分(Q.74)
元画像から縮小・拡大した画像を引くと、縮小時に失われた細部が残ります。これはローパス画像を 引いて高周波成分を取り出す処理と考えられます。
ガウシアンピラミッド(Q.75)
画像を段階的に縮小し、異なる解像度の画像群を作ります。同じ物体でも、近距離では大きく、 遠距離では小さく見えるため、複数スケールで特徴を調べる土台になります。
原画像 → 1/2 → 1/4 → 1/8 → 1/16
顕著性マップ(Q.76)
異なるスケールの画像を同じ大きさへ戻して差を取り、複数の組み合わせを加算します。 周囲と異なる構造が複数スケールで強調され、人の注意を引きやすい領域の候補になります。
空間フィルタとの関係
ガウシアンピラミッドの各段は、平滑化してから間引くことで作るのが基本です。平滑化せずに 縮小すると高周波成分が低周波へ折り返すエイリアシングが発生します。Q.9のガウシアン フィルタと画像補間が、ここではマルチスケール処理の部品として再登場します。
おすすめの記事
最新の記事
よく読まれている記事
タグから探す
- javascript129
- typescript66
- node.js54
- linux54
- 画像処理48
- amazon-aws47
- アルゴリズム37
- canvas35
- html529
- 画像処理100本ノック27
- php24
- centos24
- python22
- 競技プログラミング21
- mac21
- mysql20
- opencv17
- 雑談16
- 機械学習16
- docker16
- wordpress15
- atcoder14
- apache12
- データベース12
- amazon-s312
- red-hat12
- prisma12
- ubuntu11
- github10
- git10
- react10
- mariadb10
- vue.js9
- aws-cdk9
- css38
- 可視化8
- 小ネタ8
- next.js8
- nestjs8
- amazon-lightsail7
- ブログ6
- cms6
- oracle6
- perl6
- gitlab6
- iam5
- amazon-ec25
- 資格試験5
- aws-amplify5
- curl4