Post

Today I Learned

Today I Learned: collection of notes, tips, tricks and stuff I learn from day to day working with software, robotics and other stuff.

Python

  • Frameworks
    • pytest
    • Flask
    • FastAPI
    • Django
  • Functions/Types
    • map
    • OrderedDict
    • dictionary.setdefault(keyname, value)

Robotics

  • Behavior Tree: A behavior tree is a tree of hierarchical nodes that controls the flow of execution of “tasks”. Alternative to finite state machine, but more intuitive.

  • Visual Servoing is a control system that uses feedback from a camera to control the movement of a robot or other object.
  • Hand-eye calibration

ROS

SLAM

  • Special Orthogonal Group $SO(n)$ \(\begin{equation} SO(n) = \{\mathbf{R}\in \mathbb{R}^{n\times n} | \mathbf{R}\mathbf{R}^\top=\mathbf{I}, \det{\mathbf{R}=1}\}. \end{equation}\)
  • Rotation Matrix $\mathbf{R}$
  • Transfer matrix \(T = \begin{bmatrix} \mathbf{R} & \mathbf{t}\\ \mathbf{0}^\top & 1 \end{bmatrix}\)
  • Rodrigues’s Formula \(\begin{equation} \mathbf{R}=\cos\theta\mathbf{I}+(1-\cos\theta)\mathbf{n}\mathbf{n}^\top + \sin\theta \mathbf{n}^\wedge, \end{equation}\) where $\mathbf{R}$ is the rotation matrix, $\mathbf{n}$ is the rotation vector and $\theta$ is the rotation angle.
  • Optical Flow

C++

  • Smart pointers
    • Unique pointers unique_ptr
    • Shared pointers shared_ptr
    • Weak pointers weak_ptr
  • CMake
    • Modern CMake
      • cmake -S src -B build
      • cmake --build build
      • cmake --install build

Cloud

Tools

  • Pikimov: Free web-based motion design and movie editor
This post is licensed under CC BY 4.0 by the author.

Comments powered by Disqus. Accept cookies to comment.