かみのメモ

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

トップページ

このブログはかみの(@Kamino410)の個人ブログです。コンピュータビジョンの分野を中心にプログラミング・数学・光学の話題について書いています。月1〜2記事を目安に不定期更新中です。

Googleの検索言語をサクッと切り替えるためのブックマークレット

Google検索結果の日本語・英語を1クリックで切り替えられるブックマークレットを書いてみたので紹介します。

数理最適化の勉強メモ − Levenberg-Marquardt法

制約なし非線形最小二乗問題の解法であるLevenberg-Marquardt法について、直観的な視点と信頼領域法の視点からまとめてみます。

双対数を利用した自動微分についてのメモ

この記事では、プログラムで微分を計算する方法の1つである、双対数を利用した自動微分の原理や数値微分との比較についてまとめてみます。

Docker上のGUIアプリをホスト/リモートで描画する

リモートのUbuntuサーバーのDockerコンテナ上で起動しているGUIアプリの画面を、ホスト自身やローカルのMac/Windowsのディスプレイに表示させる方法についてまとめてみます。

Python scipyのRotationモジュールで三次元回転を扱う

scipyのRotationモジュールについてメモ。回転ベクトル, 回転行列, クォータニオン(四元数), オイラー角の相互変換の方法, 回転の合成の方法についてまとめます。

【ちょっとしたデータ処理に使える】Pythonで手軽に数値データを受け取る方法

他のプログラムで計算した数値データをPythonで手軽に受け取る小技について紹介します。

数理最適化の勉強メモ − 最急降下法 / ニュートン法の原理と特徴

連続最適化問題の数値解法である最急降下法とニュートン法についてまとめた勉強メモです。原理と特徴を数式とグラフを使いながら解説しています。

数理最適化の勉強メモ − 解析的な解法 / 最適性条件 / 勾配法がうまくいかない条件

連続最適化問題を解析的に解く方法、最適性条件、最適化がうまくいかない条件などについて考えたことをまとめた勉強メモです。

プロジェクタとカメラのキャリブレーションソフトを書いてみた

GitHubで公開しているプロカムキャリブレーションのソフトウェアについて軽い紹介記事を書いてみます。このソフトウェアはプロジェクタとカメラを使ったシステム(いわゆるプロカムシステム)において、プロジェクタとカメラの幾何較正を行うためのものです。

coreML学習済みネットワークをplaygroundで試してみた

coreML入門の手始めにAppleが配布している学習済みネットワークをmacOSのplaygroundで動かしてみました。学習済みモデルをplaygroundからロードする方法と、coreMLを動かすための最小実装をメモとして残しておきます。

iTerm2+NeoVimに定住するためにやったこと

最近ようやくNeoVim環境がいいかんじにまとまってきたので、振り返りついでに記事を書いてみます。 ターミナル開発環境を整えるためのTips集として読んで頂けると幸いです。

勝手に作るCMake入門 その4 外部ライブラリを利用する

この連載は、ここ1年くらいでCMakeに入門した筆者が勉強した内容をまとめたものです。今回はfind_packageの使い方やCMakeで外部ライブラリを利用する方法についてまとめていきます。

勝手に作るCMake入門 その3 プロジェクトの設定

この連載は、ここ1年くらいでCMakeに入門した筆者が勉強した内容をまとめたものです。今回はキャッシュ変数の役割とccmakeやcmake-guiを使ったプロジェクト設定について紹介します。

勝手に作るCMake入門 その2 プロジェクトの階層化

この連載は、ここ1年くらいでCMakeに入門した筆者が勉強した内容をまとめたものです。今回はプロジェクトを静的ライブラリとそれに依存する実行ファイルという2段階に階層化する方法について書いていきます。

勝手に作るCMake入門 その1 基本的な使い方

この連載は、ここ1年くらいでCMakeに入門した筆者が勉強した内容をまとめたものです。初回のこの記事ではCMakeとは何なのか、CMakeの基本的な使い方について書いていきます。

Unity Native PluginでC++の処理を非同期に呼び出す

前の研究室で「UnityでOpenCV使いたい」とか「UnityからArduinoにアクセスしたらゲームが固まった」とかよく耳にしたので、それに応えるつもりで記事を書いてみます。 この記事では①UnityからC++の関数を呼び出す方法、②C++の重い処理を非同期に呼び出す方法…

Plotlyでレポート・論文に使えるグラフを描こう

この記事ではPythonを使ってPlotlyのグラフを画像として保存する方法と、自分が資料用のグラフを作るときによく使うレイアウト調整の方法を紹介します。

OpenCV calibrateCamera関数のプロになる

カメラのキャリブレーションでよく使われる、OpenCVのcalibrateCamera関数の原理や実用上のコツを解説します。

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:313:…

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