Pynote

Python、機械学習、画像処理について

数学 - 3次元空間上の回転の四元数 (クォータニオン) による表現

概要

コンピューターグラフィクス等の分野では、3次元空間上の回転を四元数 (クォータニオン) で表すことが多い。
本記事では四元数でなぜ3次元空間上の回転を表せるのかを解説する。

四元数の定義及び基本的な性質については以下の記事を参照されたい。

pynote.hatenablog.com

  • 概要
    • 3次元空間上の回転
    • 四元数による3次元空間上の回転の表現
  • コンピューターで扱う際の四元数の表現
  • ある回転に対応する四元数は一意ではない
  • 参考
続きを読む

Qt - OpenGL の GLSL で描画する。 その2 シェーダーを OpenGL パイプラインにインストールする。

概要

Qt アプリケーション上で OpenGL の GLSL でシェーダーを作成し、描画を行う方法について紹介する。
今回はコンパイルしたシェーダーを OpenGL パイプラインにインストールする部分を紹介する。

  • 概要
  • 試した環境
  • 資料
  • 手順
    • プログラムオブジェクトを作成する。
    • シェーダーオブジェクトをプログラムオブジェクトにアタッチする。
    • プログラムオブジェクトをリンクする。
    • プログラムオブジェクトをインストールする。
続きを読む

Qt - OpenGL の GLSL で描画する。 その1 シェーダーをコンパイルする。

概要

Qt アプリケーション上で OpenGL の GLSL でシェーダーを作成し、描画を行う方法について紹介する。
今回はシェーダーをコンパイルする部分を紹介する。

  • 概要
  • 試した環境
  • 資料
  • 手順
  • 参考
続きを読む

Qt - Qt で OpenGL の API を利用する方法について

概要

Qt で OpenGL を利用する方法について紹介する。

  • 概要
  • 試した環境
  • 資料
  • 手順
    • CMake を編集する。
    • OpenGL を描写するための自作ウィジェットを作る
    • OpenGLAPI で描画命令を記述する。
      • 初期化処理を記述する。
      • 描画する際の処理を記述する。
    • ビルドする。
  • 参考
続きを読む

OpenCV - テンプレートマッチングの仕組み及び方法について

概要

テンプレートマッチングの仕組み及び方法について紹介する。

  • 概要
  • テンプレートマッチングの仕組み
  • OpenCV でテンプレートマッチングを行う方法
    • 関数
    • コード
      • テンプレートマッチング
    • result の解釈
    • 類似度が最も高い位置を描画がする。
    • 類似度が高い位置を描画する。
  • 類似度の計算方法
    • cv2.TM_SQDIFF
    • cv2.TM_SQDIFF_NORMED
    • cv2.TM_CCORR
    • cv2.TM_CCORR_NORMED
    • cv2.TM_CCOEFF
    • cv2.TM_CCOEFF_NORMED
続きを読む

matplotlib - OpenCV の画像を matplotlib で表示する方法について

概要

OpenCV の画像を matplotlib で表示する際の注意点について

  • 概要
  • OpenCV のカラー画像を表示する場合
  • OpenCV のグレースケール画像を表示する場合
  • 関数化する
続きを読む