かみのメモ

コンピュータビジョン・プログラムな話題中心の勉強メモ

2018-01-01から1年間の記事一覧

XFLR5のXfoilコードを抽出してみた

初の鳥人間成分。 情報量ゼロの宣伝記事です。 かの有名なMark Drela先生が作成した二次元翼型解析ソフトXfoil。 割と古いソフトですが、未だにそこそこの数の鳥人間チームが利用していると思います。 しかし自作のプログラムと連携させることを考えたとき、…

焦点距離の定義と用法をまとめてみた

珍しく光学の話題です。 コンピュータビジョンの分野では、いくつかの文脈で焦点距離(focal length)という単語が登場します。 この単語は元を辿れば全て同じ定義に行き着くのですが、使われる文脈によって前提とする考え方が少し違うので混乱しやすいです…

cmakeプロジェクトの設定項目一覧を表示させる

CMakeプロジェクトの設定項目(キャッシュ変数)の一覧を表示させる方法を紹介します。

C++で順列・組み合わせを列挙する

C++

競プロとかアルゴリズム系のコードを書いてるとたまに順列・組み合わせを列挙したいことがありますよね。この記事では自分なりに書いたC++のコードを紹介してみます。

回転ベクトル・回転行列・クォータニオン・オイラー角についてまとめてみた

この記事では回転ベクトル,回転行列,オイラー角,クォータニオン(四元数)それぞれについて回転の表現方法,特徴,右手系・左手系の変換方法を紹介します。

macOSのcmakeでcmathが大量のエラーを吐いたときのメモ

MacでPCL(Point Cloud Library)のサンプルをcmakeからビルドしようとしたときに、次のようなエラーが大量発生したので原因を調べてみました。 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/cmath:31…

OpenCVのカメラ歪みシミュレータを作ってみた

OpenCVのカメラキャリブレーションの際に取得できる歪みパラメータを可視化するWebアプリを作ってみました。 キャリブレーション結果の確認などにお使いください。 https://kamino410.github.io/cv-snippets/camera_distortion_simulator/ ソースコードはこ…

OpenCVで取得したカメラパラメータをUnityで使う

OpenCVで取得したカメラパラメータ(内部パラメータ・外部パラメータ)をUnityのカメラオブジェクトに反映させる方法を紹介します。ソースコード:https://github.com/kamino410/cv-snippets/tree/master/unity

EDSDKを使ってCanon EOSカメラをPCから制御してみた

C++

またまたニッチなネタ。 Canonの一眼レフカメラであるEOSシリーズをPCから制御するプログラムを書いてみたよ、というお話です。 ソースコード カメラと接続して写真を1枚撮って保存して終了する、という基本動作のソースコードをGitHubにアップしました。 言…

OpenCVを使ってグレイコードパターンを投影する

よく忘れるので、自分用にOpenCVを使ったグレイコードパターン投影のテンプレートを作りました。 ついでなので解説記事を書いてみます。 サンプルプログラムの言語はC++とPythonです。 github.com スポンサーリンク (adsbygoogle = window.adsbygoogle || []…

東工大 情報理工学院のA日程を外部受験した話

2019年入学の東工大 情報理工学院 情報工学系を受験したのでそのメモ。 誰かの参考になればということで残しておきます。 ※ 受験の制度は年々変化するので鵜呑みにしすぎないようご注意ください。 この記事によって生じた不利益には一切責任を持てません。 …

OpenCVに入門するならまず公式のサンプルコードを動かしてみよう

この記事では、OpenCVの公式サンプルコードを実行する方法を紹介します。公式のサンプル集はバリエーション豊かで勉強になるので「OpenCVで何ができるの?」「この処理はどう書いたらいいの?」という入門者の方におすすめです。

AngularでHttpClientのgetのためにbase-hrefを取得する

どういう状況? Angular 6.1.3でアプリを作っているときのこと。 「最終的にxxxx.example.comにデプロイするけど、とりあえずデモのためにxxxx.github.io/xxxx.example.comで公開したいな」と思いたちました。 そこでangular-cli-ghpagesを使って、 ng build…

RustからCUDAのカーネルを呼んでみた【Windows】

RustとCUDAを連携させて遊んでみた。 参考にしたのはこちらのサイト↓ qiita.com ほとんどこの記事の通りに書けばよいのですが、私の環境はWindowsで、build.rs周りで若干苦戦したのでその辺りについてまとめてみます。 環境 普通にVS Community 2017、CUDA T…

CUDA9.2でunsupported Microsoft Visual Studio version!とか言われた

C++

Visual Studio 2017でCUDA SDK v9.2のテンプレートプロジェクトをビルドしようとしたら以下のようなエラーが出た。 unsupported Microsoft Visual Studio version! Only the versions 2012, 2013, 2015 and 2017 are supported! …いやいや、VS2017使ってるん…

Rustのimageのピクセル処理をRayonで並列化する

Rustのimageでピクセルごとの処理を書くときは`enumerate_pixels_mut()`を使うらしい。 これにRayonの`par_iter_mut()`を組み合わせて、処理を並列化してみる。

ipythonで「Fatal error in launcher」が出た話

Windows 10 Home Python 3.6.5 IPython 6.3.1 Windows 10上のPythonを3.6.5にアップグレードしたところ、ipyhonがコケるようになった。 なんでやねん。 Pathを確認してもpython.exeが重複しているとかいうことはなかった。 そこでもう一度エラーメッセージを…

NVIDIA 3D Vision 2を入手したのでOpenGLでテストアプリを書いてみた

色々あってNVIDA謹製の3Dグラス「NVIDIA 3D Vision 2」と対応ディスプレイが手に入ったので、とりあえず立体視できる映像を表示してくれるプログラムを書いてみようと思った。 入手したデバイスはこれ↓ https://www.amazon.co.jp/dp/B006D9WLKO NVIDIA 3D Vi…

WindowsでOpenCVとopencv_contribをビルド&インストールする

この記事ではC++から使うためにOpenCVとopencv_contribをソースコードからビルドしてインストールする方法を紹介します。OSはWindowsを対象としています。

ASP.NET Core + AngularのDocker化でつまずいた話

ASP.NET Core + AngularなアプリのDockerコンテナを作ろうとしたときにエラーが出たのでメモ。

Pythonで三次元座標を扱うvol.2 〜可視化〜

Pythonで三次元座標を扱うときのテクニックの紹介記事。この記事ではPlotlyを使って点、ベクトル、面、メッシュデータを可視化する方法をまとめます。