catalinaの備忘録

ソフトウェアやハードウェアの備忘録。後で逆引きできるように。

c++のboostを試してみる(その2)

直前のエントリでそもそもgccのバージョンが残念だったわけだけども。 そもそも古いバージョンでも、古いサンプルコードなら通るのか?と思って実験。 http://www.boost.org/doc/libs/1_55_0/doc/html/boost_asio/examples/cpp03_examples.html Makefileの内…

c++のboostを試してみる

さて、boostでサーバ書くのがすっごくスマートだという噂があるので適当なサンプルを動かしてみたい。 とりあえずboostのインストール。 $sudo yum boost-devel boost-devel x86_64 1.41.0-18.el6 base 5.3 M こいつが入ってくれればOK。 さて、動かしてみ…

Vmwareでopenglを実行する

VMWareにCentOS入れるところまでできたので、次はOpenGLを動かすことにする。 背景 CentOS上でopenCV使ってカードの検出を行うことができた。 次は検出した情報をもとに3Dモデルのレンダリングを行いたい。(カードの位置、傾きに応じてレンダリングしたりet…

vmwareでの環境構築

なんかいろいろ手こずったのでメモ。 (6/21, smb自動起動を追加) 1, gccは入ってるけどg++が入ってないのでインストールする sudo yum install gcc-c++ これをやっておかないとc++のビルドでcc1がありませんとか言われる。 2, ネットワークのNAT設定とsshdの…

virtualboxにOpenGLをインストールしてビルド準備をする

VirtualBox上でOpenGLを使ってレンダリングできるようにする準備。 自分の環境ではminimalでインストールしてあるのでオフスクリーンレンダリングで試すことにする。 VirtualBoxの設定 こちらのサイトを参考に3Dアクセラレータを有効にする。 http://vboxman…

opencvでカードの傾きを検出する

前回のエントリまでで、カードの輪郭抽出までできたので、今回はその輪郭をもとにカードの傾きを求めることにする。 カードの傾きを求めることができれば、そのカードの上にARでモデルを表示するとき、カードの姿勢に追従することができる。 カードの傾きと…

C++でOpenCv

Opencvで輪郭抽出、実験としてJavaでやっていたけど、今回はC++でやってみることにした。やっぱり慣れてる言語っていいね。 2014/06/04追記:コード部分の体裁を修正 char* filename = argc == 2 ? argv[1] : (char*)"ajani.jpg"; if( (src = imread(filenam…

OpenCVでアルファブレンディング

OpenCVで画像同士を重ね合わせるとき、アルファブレンディングができたら演出の幅が広がりそうということで試してみた。 まずは実験ということで、文字を記述した画像を作っておいて、これを本来の画像にオーバーレイ表示する手法を取ることにした。 とりあ…

OpenCVで画像のリサイズ色々

OpenCVで画像をリサイズする方法メモ。 画像全体をリサイズ resize(src, dst, cv::Rect(320, 240), dst_size, 0, 0, INTER_LINEAR);imwrite("scale.jpg", dst); とりあえずこれで320x240にリサイズできる。ただ、アスペクト比が維持されない。(たとえば512x5…

クリーンな実験環境構築メモ

VirtualBoxにCentOS6.5環境の構築 ライブラリの依存関係を調査中。目的のプログラムを最小構成で動かしたいというありがちな要件。 問題はライブラリがほかの依存ライブラリを参照していて、どこまでが必要な機能なのかというお話。 というわけで、常にクリ…

Rで時系列のデータ分析

前回のエントリで書いたRでの動画の解析。 いい感じになってきたのでメモかねてかきかき。 Rでの三次元グラフの描画方法 scatterplot3dで3Dグラフの描画ができる。 画像に出力するためのコードはこんな感じ jpeg("output.jpg") scatterplot3d(histdata) de…

OpenCVの解析結果をRで分析する

動画サイトに色々と動画あがってるけども、再生してみないとどんな動画かわかんない。 そこで、自動でやりたい。 1, クローラで巡回して 2, OpenCvあたりでよさげな手法で解析して 3, 分析した結果をRで解析して 4, 一枚の静止画見るだけで、動画の内容がど…

Windowsストアアプリで画像の読み込みと表示

長い間ほったらかしにしていたWindowsストア向けのアプリ開発勉強再開しました。環境: C++ VisualStudio2012forWindows8まずは基礎から。と思ってhello world!やってみたけど、XAML編集するだけで終わったので次のステップに。 1, 目標 画像を表示したい。 C…

pythonとRを使って効率的なログ分析

R言語での統計解析。 仕事でもよくExcelとか使うけど、やってる作業ってだんだんとルーチンワークになってくるので、似たような処理はRでサクっとやっちゃいたい。 ログの解析とデバッグとか。 というわけで、色々と試行錯誤してみて、自分的によさげだなと…

OpenCvで画像の拡大縮小

linuxにOpenCv入れ終わったので、C++のサンプルをいじって簡単な動作確認をしてみる。 うちのLinuxVM環境にはデスクトップ入。れていないので、サンプルコードはアボートしてしまう。 (サンプルコードはウインドウ作ったりしているので、コマンドライン環境…

OpenCvをLinux上で

これまでOpenCVをAndroid上でいじっていたけども、PC上でも動かしてみると面白いことできるんじゃないかと思ってみた。 さっそくやってみる。 いろいろいじくり倒してみるならLinuxかなということで、安直にLinux版をインストール。 とりあえずVM上のCentOS6…

Unityことはじめ(MMD動かしたい)

AndroidでMMD動かしたい、Windowsでも動かしたい。 マルチプラットフォーム開発ということでUnityとやらに手を出してみました。 やりたいことは相変わらずです。 ・カメラからの入力を受け取って・OpenCVで画像を認識して・MMDのモデルとモーションを重ねて…

Rプログラムをシェルから呼び出す

背景 Rは統計解析に特化した便利な言語。今回はこいつを使って、あるプログラムの性能測定ログの集計を自動でやることにした。 目的 いままで手動で性能測定したり、ログ集計したりと手作業が含まれていたが、自動実行できたら幸せかな?という思いからいろ…

LinuxのSambaの設定

久しぶりにセットアップしなおしたらハマたのでメモ。 結論からいうと、ネットワーク設定ミス。pingすら通ってなかった。 VirtualBoxのホストオンリーアダプタでホストPC側からアクセスしようと設定したまではよかったんだけども、確認もしないでいつものよ…

Opencvでデバッグ用テキスト表示

久しぶりの更新。今日はデバッグネタ。OpenCVでデバッグするとき、画面に描画してしまったほうが結果が手早く確認できて便利なことが多い。というわけでメモ。こんだけ。Core.putText(img, DbgStr, new Point(32, 32), Core.FONT_HERSHEY_SIMPLEX, 0.6f, fon…

SkyDriveとgitの連携

GitHubのアカウントとってみた。しかし簡単にコミットしていいものかどうか判断に迷うことがある。ライセンスとかの問題が特に。適当なコード落としてきて実験している最中なんかだと、ごりごりコードいじってリビジョン管理していきたいんだけど、githubに…

Opencvでカードの輪郭抽出

OpenCvでごにょごにょやろうとしていたら、色々とハマってしまったので、備忘録をかねたメモ。とは言いつつも、何やってるコードなのか思い出せない部分も多くて困ったちゃん。 前回のエントリで書いた輪郭抽出のアルゴリズムをコードにおとしていくとこんな…

カメラ撮影した図形(カード)の認識方法について考える

今月から新しい職場で働いていますが、少しずつ慣れてきました。会社の往復の時間を有効に使いたいと思ってノートPC買いました。高確率で座席に座れるのでコードごりごり書いてます。さて、カードを認識したいというお題。いくつか方法がありそうだけども、…

OpenCVのNDK-Build

Android上でOpenCVを使って少し複雑な画像認識をするために、NDKビルドというものをする必要がある。そのための準備。 序章:NDK-Buildとは?それを使って何ができる? まず、一般的なAndroidのアプリケーションはJavaで記述する。JavaはVM上で動作するため…

ARToolkitのマーカーファイル差し替え

ARToolkitのマーカーファイルを独自のものにしたい。目的は友人からの一言「MTGのマナシンボル認識できれば遊べるんじゃね?」と。 1,マーカーパターン生成ツールをダウンロード ARToolkitに認識するマーカーパターンファイルの生成ツールが入っているらしい…

NyARToolKit + MMD で遊んでみる

ここのところ仕事の引継ぎやらなにやらで色々と忙しい。気分転換したいのにOpenCVの数式やら関数やら勉強してると滅入ってしまう。そこで、手軽に遊びつつアイデアを膨らませようとNyARToolKitで遊んでみた。NyARToolKitとNyMmdForAndroidでマーカー型ARの実…

sudoersファイルを安全に設定する

sudo可能なユーザーを設定するために、今まではviで /etc/sudoers を編集していた。当然のコトながら、このファイルの文法エラーを出すと面倒なことになってしまう。今日知ったのはvisudoコマンド。このコマンドは、sudoersファイルへの排他アクセスと、簡単…

OpenCVで背景除去(その1)

画像処理の基本として背景除去に手を出してみる。まだ初歩なので実運用には程遠いものだと思う。 1、フレーム差分を求める フレーム差分を求める。これは動きのあった箇所が抽出されることになる。ただ、カメラではどうしても手ぶれがあるので、実行してみ…

DirectX11で複数のモデルを表示

DirectX11では昔(DirectX 8の時代)のやり方が通用しなかったのでメモ。行列の管理のあたり。 1、モデルごとに行列を設定する方法 まずは結論のコードから。VisualStudio Express12が吐き出したDirectXのスケルトンコードに対して変更を加えるならば、次のと…

Linuxでネットワークに繋がらないとき

Linuxでサーバ立ち上げたり、ちょっと実験なんてことがよくある。 予想外に手間取ったので、今後のためにメモ。環境:Fedora181, SELinux を確認 SELinuxが有効になっていると、 テストしたいプロトコルが外部との通信が行えないことがある。一時的にSELinux…