ホモグラフィ行列
半年ほど放置してました……
ホモグラフィ行列にかぎらず,
カメラ座標系<->ワールド座標系の行ったり来たりでよく使う行列演算.
色々と解法はありますが,今回は一番シンプル(だと思っている)方法をメモ.
(というか,3ヶ月前くらいにやったやつなんですけどね……)
はてブで数式を記述するのが面倒なので
スライドをそのまま貼っておきます.
この手のn次連立方程式の解法に関しては色々とある(たとえば ホモグラフィ行列を求める - Wikimuraなど.最初に実装の参考にしたのはこの方法)
で,pythonで実装したのがこちら
ホモグラフィ行列を求める - Wikimuraを参考にして実装したのがこちら.
こちらでは,固有値展開・最小二乗を用いて解を求めています.
とりあえずメモ.
フルで動作するのはこちらです→ hmiha/trans_homo · GitHub
研究室配属
光メディアインターフェース研究室への配属が決定しました.
ずっと元々研究していた無線系やネットワーク系と迷っていましたが(マジで悩んだ), 自分が本当にやりたいことって何だ? を突き詰めると, この研究室に行き着きました.
ここ1年くらいの趣味【カメラ】に関する研究ができそうで楽しみです.
加えて本年度新設研究室ということで,研究室づくりからのスタートとなります.
なかなかできない経験ですね.
あとは2年後就職するのかDまで行くのか……
さっさと決めなきゃなりません.
【備忘】POV-RayをMacにインストール
POV-Rayとは?
The Persistence of Vision Raytracer is a high-quality, Free Software tool for creating stunning three-dimensional graphics.
"Raytracer"とは,"Raytracing"を行うツールなわけですが, 各視点における光の伝わり方(視線と言ったりもする)を分析し, 視線の先に物体があれば,その物体の材質情報や形状から反射の様子を計算, 視線の先に物体がなければ,演算を終了するといった 高品質CGを生成するために開発された手法のようです.
POV-Rayはモデリングした物体に対して"Raytracing"を行うツールってことでしょう(きっと)
ということで,Macに導入しようと思ったのですが…
currently only Microsoft Windows
http://www.povray.org/download/より
ちょっと意味がわからないですね.
ということで,どうにかしてMacにインストールします.
古いバージョンを探す
ということでググるわけですが,古いバージョンのインストール方法がこちらのブログに紹介されていました.
POV-Ray on Intel Mac
で,紹介されているミラーサイトでダウンロードすると…
povpmac.sit
なるアーカイブフォルダが.
初めて見ました……
解凍し,インストールを試みると,
なんだこれは?
ということで,またググります.
謎形式のファイルをどうにか展開する
次はこちらのブログ様より知恵を拝借します.
Lionに変えてから昔のimgが開かなくなった件
紹介されている通り,ディスクユーティリティを使って「変換」いたします.
すると……
dmgファイルができました.
さて,これをマウントして展開してみます.
……
………
…………
しかし
とっても進捗ダメです
な感じ.
諦めて次に行きましょう.
POV-Ray Unofficial 3.7.0 For Mac OS Xをインストール
もう少しググるとこんなページが.
関西学院大学理工学部 大崎研究室様(崎じゃなくって「立」を使う方です……
こちらのページによると,Intel Macでも動作する"Unofficial"なPOV-Rayがあるとか.
ということで,こちらへ.
POV-Ray Unofficial 3.7.0 For Mac OS X
すると……
おっ……?
おおーっ!
上手いことできそうです.
サンプル出力
京都女子大学で公開されているサンプルコードを参考にして,レンダリングしてみます.
すると……
ダメです.
このcolors.inc
のパスを通さないとダメらしいです.
もうすぐできます
ということで,Preferences からインクルードフォルダを紐付けるよう設定します.
さて,もう一度レンダリング.
サンプルコードをレンダリングできました.
やったね.
参考文献
本文中のリンクが参考文献となっています.
ウラ話
講義の課題は「"Raytracing"についてまとめよ」なので,あまり関係ない作業をしていたことになります.
レポート書かなきゃ……
修正
パスを通す先が間違っておりました(3.7をいじっているのに,3.5のincludeにパスを通してしまうという……)
正しくはこちら
ご指摘ありがとうございますm( )m
桜
奈良の桜でございます。
Homebrewのエラーを1つ1つ見ていきます
先日インストールしたHomebrewですが,色々とエラーがあったようです.
そのままでも問題なく動くようですが,放置しておいても気持ち悪いので
1つ1つ解決していこうと思います.
エラーその1
Warning: Some directories in /usr/local/share/man aren't writable. This can happen if you "sudo make install" software that isn't managed by Homebrew. If a brew tries to add locale information to one of these directories, then the install will fail during the link step. You should probably `chown` them: /usr/local/share/man/de /usr/local/share/man/de/man1 /usr/local/share/man/mann
新しいパッケージをインストールした時に,manが更新できないようです.
ご丁寧に「chownでwrite権限を付与すればいいよ」とおっしゃってくれています.
まずは権限を見てみます.
$ ls -la /usr/local/share/man total 8 drwxrwxr-x 6 root admin 204 Apr 2 22:17 . drwxrwxr-x 5 root admin 170 Apr 2 22:17 .. drwxr-xr-x 3 root wheel 102 Oct 24 18:26 de drwxrwxr-x 36 root admin 1224 Apr 2 22:17 man1 drwxr-xr-x 6 root wheel 204 Mar 30 2013 mann -rw-r--r-- 1 root admin 2546 Mar 30 23:20 whatis
rootユーザにしか権限が与えられていません.
ということで
$ sudo chown HajimeMihara /usr/local/share/man/de $ sudo chown HajimeMihara /usr/local/share/man/de/man1 $ sudo chown HajimeMihara /usr/local/share/man/mann
これで一般ユーザにも権限が付与されて,1つエラーが減りました.
エラーその2
Warning: "config" scripts exist outside your system or Homebrew directories. `./configure` scripts often look for *-config scripts to determine if software packages are installed, and what additional flags to use when compiling and linking. Having additional scripts in your path can confuse software installed via Homebrew if the config script overrides a system or Homebrew provided script of the same name. We found the following "config" scripts: /Applications/gnuplot.app/bin/freetype-config /Applications/gnuplot.app/bin/gdlib-config /Applications/gnuplot.app/bin/libpng-config /Applications/gnuplot.app/bin/libpng15-config /Applications/gnuplot.app/bin/pdflib-config
どうやら前にインストールしたgnuplotのconfigとbrewで必要となるファイルが競合してしまうようです.
とりあえずgnuplotはアンインストールします.
するとエラーは消えました.
エラーその3
Warning: Unbrewed dylibs were found in /usr/local/lib. If you didn't put them there on purpose they could cause problems when building Homebrew formulae, and may need to be deleted.
dylib(共有ライブラリ)が邪魔なようです.
共有ライブラリについてはまた今度.
対象ファイルをrm
で削除すると,エラーはめでたく消えました.
エラーその4・その5
先ほどのdylib
と同様に共有ライブラリである.la
,.a
,.pc
が邪魔だと言われました.
MacPortsでインストールしたソフトウエアの残骸だと思われます……
これらもrm
で削除するとエラーが消えました.
エラーその6
arning: You have unlinked kegs in your Cellar Leaving kegs unlinked can lead to build-trouble and cause brews that depend on those kegs to fail to run properly once built. Run `brew link` on these: git
エラーを残したままgitをインストールしたため,brewとリンクが取れていないとか.
指示の通り,brew link git
でつなげてあげます.
エラーその7
Warning: Broken symlinks were found. Remove them with `brew prune`:
と言われたので,sudo brew prune
を実行すると,上手いこと消えてくれました.
エラーその8
ラストは
Warning: A newer Command Line Tools release is available Update them from Software Update in the App Store.
XCodeのコマンドラインツールをAppStoreからアップデートします.
すると……
Your system is ready to brew.
できました.
参考文献
http://blog.pinkpinkpink.net/2012/07/homebrew.html http://qiita.com/Qiita/items/c686397e4a0f4f11683d http://d.hatena.ne.jp/january/20130723/1374538421 http://qa.atmarkit.co.jp/q/2666 http://d.hatena.ne.jp/EnnuimaZ/20120502/1335928195 http://tmpla.info/archives/1716
MacPortsとお別れ,こんにちはHomebrew
Macのパッケージ管理は「Macports」を使用していたのですが,
- スーパーユーザ権限が不要
- パッケージダウンロードとインストールの手間が減る
のようなメリットがあるそうなので,「Homebrew」に乗り換えることにしました.
ということでbrewをインストール.
……とはいいつつ,やることは
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
をMacのターミナルに打ち込む(貼り付ける)だけ.
特に問題がなかったので,スムーズにインストール完了.
…
…
しかし,どうやらMacPortsと競合が起こる可能性があるとか. さてMacPortsをアンインストール.
sudo rm -rf /opt/local \ /Applications/MacPorts \ /Applications/DarwinPorts \ /Library/Tcl/macports1.0 \ /Library/Tcl/darwinports1.0 \ /Library/LaunchDaemons/org.macports.* \ /Library/StartupItems/DarwinPortsStartup \ /Library/Receipts/MacPorts*.pkg \ /Library/Receipts/DarwinPorts*.pkg
こちらをガサっとターミナルへ.
エラーが無ければ,めでたくMacPortsはアンインストール.
ありがとうMacPorts,こんにちはHomebrew.
参考
http://guide.macports.org/chunked/installing.macports.uninstalling.html
http://satomacoto.blogspot.jp/2009/05/macports.html