kornia/kornia
🐍 Geometric Computer Vision Library for Spatial AI
What it solves
Kornia は微分可能なコンピュータビジョンライブラリを提供し、画像処理や幾何ビジョンアルゴリズムをディープラーニングパイプラインに直接統合できます。OpenCV のような非微分可能ライブラリとディープラーニングフレームワークを行き来する必要がなくなり、ビジョンタスクで自動微分と GPU 加速が可能になります。
How it works
PyTorch 上に構築されており、Kornia はビジョン演算子を微分可能なモジュールとして実装しています。これにより、画像変換、フィルタ、幾何操作を通じて勾配が伝搬します。バッチ変換をサポートし、以下のような包括的なツール群を提供します:
- Image Processing:微分可能なフィルタ(Gaussian、Sobel)、カラー変換、形態学的操作。
- Augmentations:GPU 加速されたデータ拡張パイプライン(例:RandAugment)。
- Geometry:カメラキャリブレーション、ステレオビジョン、3D 変換ツール。
- AI Models:顔検出、特徴マッチング(LoFTR、LightGlue)、セグメンテーション(SAM)用の事前学習モデルを統合。
Who it’s for
PyTorch を使用し、微分可能なフレームワーク内で複雑な画像操作をトレーニングや推論に組み込みたいコンピュータビジョンの AI 研究者や開発者向けに設計されています。
Highlights
- Differentiable Operators:自動微分をサポートする 500 以上の演算子。
- GPU Acceleration:PyTorch とシームレスに統合され、高性能処理を実現。
- Multi-framework Support:Ivy を介して TensorFlow、JAX、NumPy と互換性あり。
- Half-Precision Support:float16 と bfloat16 をサポートし、メモリと速度を最適化。
- End-to-End Vision:Vision Language Models(VLM)や Vision Language Agents(VLA)との統合に重点を置く。