SourceForge.JP: Open Source Software

LoginCreate AccountAdd BookmarkHelp

OpenSource Downloads

(7,965) Cabos
(3,068) 7-Zip
(2,483) Tera Term
(2,009) CrystalDiskInfo
(1,669) HandBrake Japanese Language Version
(1,252) CrystalDiskMark
(921) ffdshow
(669) Tween
(667) Boookends
10  (569) Amateras
11  (563) ギコナビ
12  (502) MergeDoc
13  (436) VirtualDubMod-jp
14  (422) えこでこツール
15  (375) SMPlayer
More >>

最近ブックマークされた記事

パノラマ画像を作成するソフトウェアツール

2005年09月01日 11:09
  • スラッシュドットにタレコむ
  • あとで読む
休暇を思いきり楽しんで、わが家に帰り着いた。ブラックキャニオン・オブ・ザ・ガニソンの絶景、ガンジス川の日没……心が震える体験だった。さっそく、あの感動を再現しようと、撮ってきた映像をモニタで再生してみた。だが……なんと薄っぺらで、つまらなく見えることだろう。まして、4x6インチの写真はひどい。そんなときは、オープンソースソフトウェアのツールで、思い出をそのままよみがえらせてみてはどうだろう。

ほとんどの写真が薄っぺらく見えるのはなぜか。理由は簡単で、人間の目の視野が約140°あるのに対し、カメラのレンズはせいぜい40°から65°の範囲しか捕捉できない。実体験に比べ、写真が実に物足りなく見えるのはそのせいである。

来年こそ迫真の写真を撮りたいという人には、2通りの道がある。いまから貯金を始めて、特殊なパノラマカメラを買うか。それとも、その貯金は飛行機代に回し、魔法のフリーソフトウェアを使って小さな写真を繋ぎ合わせ、溜息もののパノラマ風景を作り出すか。

もちろん、パノラマ画像処理にはもっと本格的なアプリケーションがある。だが、対象のサイズがどうであれ、高精細写真を撮るには複数の画像を繋ぎ合わせることが必要である。それは、どのアプリケーションを使う場合でも変わらない。NASAも、宇宙飛行士も、空中写真家も、わが家の上空を飛んでいるCIAスパイ衛星も、やることは同じである。多くの画像を撮り、それをタイル式に並べ、位置関係を調整し、繋ぎ合わせる。ただ、科学的発見がかかっているとなれば、絶対に計算間違いは許されないから、念の入れ方も半端ではなくなる。

とにかく始めてみよう。最初の1歩は簡単である。どこかエキゾチックな場所に出かけ、写真をたくさん撮ろう。写真と写真の間に隙間が生じないよう、多少重なり合うように撮るのがこつである。チュートリアルを熟読し、カメラ、三脚、ハンディマンレベル、露出、その他を正しく設定し、できるだけきれいな写真を撮ると、繋ぎ合わせやすい。帰宅したら、その写真をダウンロードするかスキャンして、必要なソフトウェアをダウンロードする。

時宜にかなう一繋ぎ

オープンソースの現パノラマ作成チャンピオンは、Huginである。つい先週、NewsForgeでもそのプロファイルを紹介したばかりだ。Huginは、ばらばらの写真を繋ぎ合わせ、1つの滑らかな全体を作り出す。だが、できることはそれにとどまらない。

HuginはPanoToolsから派生したソフトウェアである。PanoToolsは、ドイツの大学教授Helmut Derschが開発した優秀なパノラマ処理アプリケーション群で、それ自体の開発はすでに中止されているが、そこからHuginや、(ややレベルは低いが)その他のプロジェクトが生まれている。詳しくは、PanoTools wikiを参照してほしい。

このアプリケーションファミリー以外にも選択肢はある。Huginのオプションに威圧感を覚える人は、もっと簡単なEnblendから始めるとよいかもしれない。Enblendはコマンドラインツールで、複数の画像から全体を合成し、境目を消し去る。ただ、戸外で撮影された写真だと、齣の縁で光の減衰が起こり、そのために「ぼやけ感」が生じがちで、これを避けることは難しい。散乱光が強くなる青空のもとでは、いっそう難しくなる。

Monoユーザなら、SIFT(Scale-Invariant Feature Transform)実装の1つ、autopano-SIFTを試してみてもよいだろう。SIFTの得意技は、画像の「興味深い特徴」を自動的に見つけ出すことである。画像群の繋ぎ合わせでは、そうした興味深い特徴が制御点となる。つまり、ソフトウェアは、隣接する2つ以上の画像タイルに共通する特徴に注目し、それを手がかりにして滑らかな繋ぎ合わせを試みる。

制御点の発見をソフトウェアに任せず、自分で指定したいという人には、PanoPointsをお勧めする。これはperl-GTKプログラムで、興味深い特徴の発見をユーザに依存する。先にautopano-SIFTを使ってみて、自動発見がうまくいかないと感じたときは、PanoPointsのほうがよいかもしれない。

ウェアラブルコンピューティングのグル、Steve Mannの研究室からは、VideoOrbitsが発表されている。これは、拡張現実を合成画像で表示したいという願いから生まれたツールキットである。パノラマタイルの繋ぎ合わせのほか、いく通りもの露出を重ねることで色調の幅を広げることができる(たとえば、影の明細を示す画像と光の明細を示す画像とを組み合せ、その両方を見られるようにする、など)。

現実歪曲野を逃れて

すぐれた合成パノラマ写真は、超広角レンズで撮影された単一写真よりすぐれている。これには2つの理由がある。まず、超広角レンズでは遠近感の歪みが起こることである。レンズには指向性があって、齣の中央付近の物体が周辺の物体に比べて大きく写る。次に、この不完全な世界では、どのようなレンズにも多かれ少なかれ樽形球面収差が起こる。つまり、直線であるべきものが目で見てわかるほどの曲線になる。

樽形球面収差の補正には、PanoToolsの流れを汲むパッケージなら、ほぼどれでも使用できる。また、2つの独立プロジェクト、PTLens(GUIツール)とclens(コマンドラインツール)から、どちらかを選ぶこともできる。PTLensの開発者はThomas Niemann、clensの開発者は、PanoToolsの最終リリースを惜しむあるSourceForgeグループである。

どちらのツールも、カメラとレンズの正確な情報を収めたデータベースと対になっていて、そのデータベースに基づいて必要な補正を計算する。また、EXIFタグを持つ画像ファイルにはカメラとレンズの情報が含まれていて、どちらのアプリケーションもそれを自動的に読むことができる。使用しているカメラ/レンズの組み合わせがデータベースにないときは、サンプル画像をThomas Niemannに送ると、歪みを計算してもらえる。その値がデータベースの次期リリースに追加されることは言うまでもない。

私はもう何年もフリーソフトウェアに関係していて、この世界の親切さが身に沁みている。歪み補正のアプリケーションなら、クローズドソースの市販品もいくつかあるが、どこに頼んでもこれだけのことはやってもらえないと保証できる。

加えて――画像の繋ぎ合わせ同様――歪み補正にもほかにいくつかの用途がある。百万長者なら、ティルトシフトレンズとクレーンを買えばよい。そうすれば、心のおもむくまま、どのような姿勢からでも撮影ができるだろう。だが、そうでないわれわれには、角度と遠近感と歪みを計算で補正できる機能が欠かせない。

自由度

もちろん、いくらパノラマ画像を巧みに作成できても、それを表示できなければ何もならない。最も簡単なパノラマ出力方法は、長く細い画像ファイル(JPEGまたはTIFF)を使用することである。これを直線パノラマと呼ぶ。これなら誰とでも分かち合える。Flickrには、パノラマ画像世話維持打ち込んでいるグループいくつかあるし、壁が寂しいという人のためには、長いロール紙に印刷できるインクジェットプリンタもある。

だが、遅かれ早かれ、360°パノラマに手を染めてみたいという欲求が頭をもたげるだろう。これには完全球形パノラマ(周囲360°、上90°、下90°)と部分球形パノラマ(円筒形など)があるが、どちらにも特殊なビューアが必要となる。

フリーでないオペレーティングシステムに囲い込まれている人は、Apple社のQuickTimeプラグインでQuickTimeVRパノラマが見られる。QuickTimeプラグインは、WINEにもインストールできる

ただ、QuickTimeVRでサポートされるパノラマフォーマットは限られている。サポートされていないフォーマットには、PanoCubeコンバータというシェアウェアによる変換が必要である。

オープンソースのJavaアプレット、PTViewerのほうが選択肢としてはすぐれている。これもPanoToolsの流れを汲むソフトウェアだが、現在はFulvio Senoreによって保守され、開発がつづけられている。

最近、技術的観点からは望ましいものの、ユーザの立場からは混乱を招きかねない動きが出てきた。それは、PanoToolsの作成者Helmut Derschが、PTViewerの開発を再開したことである。同じものに2つの流れができたことになる。もちろん、取り入れる機能も異なっていて、こちらはモバイルデバイスもサポートする。

最後に、HuginプロジェクトでPanoglviewの開発が進んでいる。こちらはOpenGLを使ったビューアで、まだベータ段階にある。

求む、弁護士とレンズとお金

上記ツールの多くが、PanoToolsという――どうやら、作成者によって放棄されたかに見える――パッケージを共通の土台としていることに気づかれただろう。不思議に思われたかもしれないが、実はこういう事情がある。PanoToolsは、1998年にHelmut Derschによってリリースされた。深い光学知識と、確固たる数学と、終わりないハードワークから生まれた成果だった。Huginを始めとする派生ソフトウェア群は、計算のコア部分をユーザフレンドリにしたが、まだ改善を要するアルゴリズムもいくつかあった。

トラブルは2001年に起こった。IPIX社というアメリカの会社が法律を盾にとり、Dersch攻撃を始めたのである。IPIX社は当のDerschはもちろん、他のフリーソフトウェア開発者や商売上の競争相手数社に対しても脅迫状まがいの手紙を送り、同社の所有する特許権を侵害したと責めた。

仮想現実コミュニティや没入型画像コミュニティでは、多くの人々が特許の妥当性に疑問を投げかけ、技術がそれ以前から(ものによっては何十年も前から)存在していたこと、特許範囲が曖昧であること(特許の対象が8mmレンズ用の技術だったにもかかわらず、IPIX社は、あらゆる広角レンズに適用されると主張した)、声高な主張のタイミングがIPIX社のIPOと一致していたこと、を指摘した。

IPIX社から訴えられても、Derschには法廷闘争を戦い抜く力がなく、しかたなく、まず自分のWebサイトからほとんどの内容を撤去し、最終的にはサイトそのものを撤去した。だが、当該ソフトウェアの現在所有している人々には再配布と開発継続の許可を与えた。

IPIX社は、ある競争相手1社との訴訟で和解に応じ、最近は比較的鳴りをひそめている。おそらく、いくつもの反IPIXキャンペーンが盛り上がり、問題の特許における同社の主張を覆すような証拠が、着々と集まりはじめていることとも関係しているのだろう。

今日、ドットコムバブルの絶頂期にIPIX社が力尽くで押さえ込もうとしたソフトウェアのほとんどが、オンラインに復帰している。IPIX社の財務状況をぜひ知りたいという好奇心旺盛な方は、Yahoo! Financeへどうぞ。

いずれにせよ、オープンソースソフトウェアは、現在、パノラマ写真作成だけでなく、画像タイルの繋ぎ合わせ、歪み補正、遠近感調整の分野でも着実な進展を見せている。これがよいニュースでなくて何だろう。

原文

Nathan-Willis(2005年8月30日(火))
2007年07月01日 19:05 更新