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:複雜的資料增強管線(例如 RandAugment),支援 GPU 加速。
  • Geometry:相機校正、立體視覺與 3D 變換工具。
  • AI Models:整合預訓練模型,用於人臉偵測、特徵匹配(LoFTR、LightGlue)與分割(SAM)。

Who it’s for

此函式庫設計給從事電腦視覺的 AI 研究者與開發者,特別是使用 PyTorch、需要在可微分框架內執行複雜影像操作以進行訓練或推論的人員。

Highlights

  • Differentiable Operators:超過 500 個支援自動微分的運算子。
  • GPU Acceleration:與 PyTorch 無縫整合,提供高效能處理。
  • Multi-framework Support:透過 Ivy 相容於 TensorFlow、JAX 與 NumPy。
  • Half-Precision Support:支援 float16 與 bfloat16,優化記憶體與速度。
  • End-to-End Vision:將焦點轉向整合視覺語言模型(VLM)與視覺語言代理(VLA)。