投稿

Non-Photorealistic Rendering

イメージ
OpenCVにはNon-Photorealisticな画像に変換するための関数が用意されている。cv::stylization()やcv::pencilSketch()を用いることで、油絵や鉛筆画風の画像に入力画像を変換することができる。 入力画像 dst1 dst2 dst3 #include <opencv2/opencv.hpp> int main(int argc, char** argv) { cv::Mat image = cv::imread("../data/lena.bmp"); cv::Mat dst1, dst2; //鉛筆画風に変換 cv::pencilSketch(image, dst1, dst2); cv::imwrite("pencil1.jpg", dst1); cv::imwrite("pencil2.jpg", dst2); //油絵風 cv::stylization(image, dst3); cv::imwrite("style.jpg", dst3); return 0; }

Ricoh Theta S

Ricoh Theta SのUSB接続でのライブストリーミングでパノラマ画像が直接取得できるようになっていた。初期に購入したTheta Sでこの機能を有効にするためには、ファームウェアのアップデートを行う必要がある。 https://theta360.com/ja/support/download/firmware/s/ 現状、魚眼カメラの画像が2つ横並びになっている状態に加えて、HD画質のパノラマ画像(THETA UVC HD Blender)とFullHD画質のパノラマ画像(THETA UVC FullHD Blender)の取得が可能となっている。 OpenCVを使ってキャプチャする場合も、デバイスIDを変更するだけでTheta Sから取得する画像の切り替えが可能。

カメラ位置・姿勢推定ライブラリOpenGV

2D-3Dの対応関係または複数画像間での2D-2Dの対応関係から、内部パラメータが既知のカメラの位置・姿勢を推定する様々なアルゴリズムが実装されている OpenGV というライブラリがある。 OpenGVには "A library for solving calibrated central and non-central geometric vision problems" とあるように、カメラの投影中心が一致していないマルチカメラシステムの位置・姿勢推定問題を解くためのアルゴリズムも実装されている。 Windows+Visual Studio 2012での利用方法 ライブラリの生成 OpenGVのサイトに インストール方法 が載っているので、これに従ってソースコードのダウンロード及びコンパイルを行うと良い。具体的には、まず、GitHubから ソースコード をダウンロードしてくる。次に、CMakeを使ってVisual Studio用のソリューションファイルを生成する。最後に、生成されたソリューションをビルドすると"opengv.lib"と"random_generators.lib"が生成される。 プロジェクトファイルの設定 追加のインクルードディレクトリに "/opengv/include" と "/opengv/third_party" を追加する。また、追加のライブラリディレクトリに "opengv.lib" へのパスを追加し、追加の依存ファイルとして"opengv.lib"を追加する。また、シミュレーションデータの生成などを行いたい場合は、追加のインクルードディレクトリに "/opengv/test" を追加し、追加の依存ファイルとして "random_generators.lib"を追加しておく。 各アルゴリズムには、三次元点の世界座標、画像上での観測座標、基準となるカメラ座標系から各カメラへの並進と回転(投影中心が一致している場合は並進は0ベクトルで回転行列は単位行列)を与えることでカメラ位置・姿勢を推定することができる。 ただし、画像上での観測...

個人ホームページ上での論文の公開

論文誌や学会で発表した研究の原稿を自分のホームページでも公開したい場合がある。学会によって原稿の取り扱いが違うので、メモとしてまとめておく。 基本的には「 Webサイトへの論文公開について 」という文献を参考にしつつ、学会サイトで確認をした。(間違って理解しているところがあるかも。。。) 電子情報通信学会 論文発行後、権利表示されている出版社版PDFを公開することが可能。著者最終版については掲載不可。IEICE Transactions Onlineトップページへのリンクが必要。技術研究報告については、公開不可。 情報処理学会 発行前でも論文、研究会原稿などのPDFを公開することが可能。ただし、利用上の注意事項を書いておく必要がある。 日本バーチャルリアリティ学会 論文発行日から6ヶ月以上経過している場合には、掲載版のPDFを公開することが可能。 IEEE 論文、国際会議原稿ともに著者最終版の掲載が可能。 ACM DOIを記載することで著者最終版の公開が可能。 Springer 著者最終版の公開が可能。 Elsevier Open Accessの場合は、出版社版のPDFを公開することが可能。有料論文については著者最終版のみ掲載可能。

パワーポイントファイルから動画ファイルを取り出す

パワーポイントのファイル*.pptxに埋め込まれた動画ファイルを抽出したい場合が稀にある。このような場合には、以下の手順で埋め込まれている動画を抽出することが出来る。 ファイルの拡張子をpptxからzipに変更する。(元のファイルを残したい場合は、事前にコピーしておくこと) zipファイルを解凍(展開)する。 解凍したフォルダ中にあるpptフォルダの中に埋め込まれている動画ファイルなどが格納されているので、ここから目的のファイルを見つける。 最近、動画をふんだんにちりばめたパワーポイントを作ったらpptxファイルの容量が1GBを超えていた。動画が多い場合は、埋め込みではなく動画へのリンクを指定した方が良いかもしれない。ただし、この場合には、上記の方法では、動画は取り出せない。

iOS Developer Programの種類

iOS用のアプリを開発する場合、iOS Developer Programに参加する必要がある。個人だとiOSデベロッパプログラム(年間¥7,800, 2014.06.22現在)を選択することになる。 一方で、企業や大学などの団体で利用する場合は、以下の三種類から選択することが出来る。 iOSデベロッパプログラム(年間¥7,800, 2014.06.22現在) iOSデベロッパエンタープライズプログラム(年間¥23,800, 2014.06.22現在) iOSデベロッパユニバーシティプログラム(無料) 各プログラムの違いについては、Appleのサイトに比較表があるのでこちらを参考にすれば良い。 https://developer.apple.com/jp/programs/start/ios/ 注意しないとならないのは、2014.06.22時点では、各プログラムに関して以下のような制約がある。 iOSデベロッパプログラム:1法人につき1ライセンス iOSデベロッパエンタープライズプログラム:1法人につき1ライセンス iOSデベロッパユニバーシティプログラム:学科ごとに1ライセンス なので、まずは自分の所属する機関に相談してから申請する必要がある。

VisualSfMの使い方 その5 -三次元点の追加-

イメージ
これまでに紹介した方法では、まず画像間で対応点を探索し、対応づいた特徴点に対して復元処理を行っていた。この最初の対応点探索処理は、画像から抽出される特徴量のみを用いて実行される。 一方で、復元処理が完了した後は、画像から抽出される特徴量に加え、カメラ間の幾何学的な関係も対応付けの際の拘束として利用することが出来る。この拘束を用いることで、より多くの特徴点を対応付ける事が可能となる。 これを実現するために、VisualSfMでは、"SfM->More Functions->Find More Points"を選択することで既知のカメラ位置・姿勢を用いた対応点情報の追加を行うことができる。 以下は、Find More Pointsにより、対応点の追加の結果である。追加後の方が、点の密度が高くなっていることが確認できる。 対応点追加前  対応点追加後