Englisch | 简体中文
Dokumente • Jetzt ausprobieren • Tutorials • Beispiele • Blog • Community
Kornia ist eine differenzierbare Computer-Vision-Bibliothek, die einen umfangreichen Satz differenzierbarer Bildverarbeitungs- und geometrischer Vision-Algorithmen bereitstellt. Kornia basiert auf PyTorch und lässt sich nahtlos in bestehende KI-Workflows integrieren, sodass Sie leistungsstarke Batch-Transformationen, automatische Differenzierung und GPU-Beschleunigung nutzen können. Egal, ob Sie an Bildtransformationen, Erweiterungen oder KI-gesteuerter Bildverarbeitung arbeiten, Kornia stattet Sie mit den Werkzeugen aus, die Sie benötigen, um Ihre Ideen zum Leben zu erwecken.
Kategorie | Methoden/Modelle |
---|---|
Bildverarbeitung | - Farbkonvertierungen (RGB, Graustufen, HSV usw.) - Geometrische Transformationen (Affin, Homographie, Größenänderung usw.) - Filterung (Gaußsche Unschärfe, mittlere Unschärfe usw.) - Kantenerkennung (Sobel, Canny usw.) - Morphologische Operationen (Erosion, Dilatation usw.) |
Augmentation | - Zufälliges Zuschneiden, Löschen - Zufällige geometrische Transformationen (Affin, Spiegeln, Fischauge, Perspektive, Dünnplatten-Spline, Elastisch) - Zufällige Geräusche (Gauß, Median, Bewegung, Box, Regen, Schnee, Salz und Pfeffer) - Zufälliges Farbzittern (Kontrast, Helligkeit, CLAHE, Ausgleich, Gamma, Farbton, Invertieren, JPEG, Plasma, Posterisieren, Sättigung, Schärfe, Solarisieren) - Random MixUp, CutMix, Mosaik, Transplantation usw. |
Merkmalserkennung | - Detektor (Harris, GFTT, Hessian, DoG, KeyNet, DISK und DeDoDe) - Deskriptor (SIFT, HardNet, TFeat, HyNet, SOSNet und LAFDescriptor) - Matching (nächster Nachbar, gegenseitiger nächster Nachbar, geometrisch bewusstes Matching, AdaLAM LightGlue und LoFTR) |
Geometrie | - Kameramodelle und Kalibrierung - Stereosehen (epipolare Geometrie, Disparität usw.) - Homographieschätzung - Tiefenschätzung aus Disparität - 3D-Transformationen |
Deep-Learning-Schichten | - Benutzerdefinierte Faltungsschichten - Wiederkehrende Schichten für Sehaufgaben - Verlustfunktionen (z. B. SSIM, PSNR usw.) - Visionspezifische Optimierer |
Photometrische Funktionen | - Photometrische Verlustfunktionen - Photometrische Augmentationen |
Filtern | - Bilaterale Filterung - DexiNed - Auflösen - Geführte Unschärfe - Laplaceian - Gauß - Nicht-lokale Mittel - Sobel - Unscharfe Maskierung |
Farbe | - Farbraumkonvertierungen - Helligkeits-/Kontrastanpassung - Gammakorrektur |
Stereovision | - Disparitätsschätzung - Tiefenschätzung - Berichtigung |
Bildregistrierung | - Affine und homografiebasierte Registrierung - Bildausrichtung mithilfe von Feature-Matching |
Posenschätzung | - Wesentliche und grundlegende Matrixschätzung - PnP-Problemlöser - Verfeinerung der Pose |
Optischer Fluss | - Optischer Farneback-Fluss - Dichter optischer Fluss - Spärlicher optischer Fluss |
3D-Vision | - Tiefenschätzung - Punktwolkenoperationen - Nerf |
Bildrauschen | - Gaußsche Rauschunterdrückung - Entfernung von Poisson-Rauschen |
Kantenerkennung | - Sobel-Operator - Intelligente Kantenerkennung |
Transformationen | - Drehung - Übersetzung - Skalierung - Scheren |
Verlustfunktionen | - SSIM (Structural Similarity Index Measure) - PSNR (Peak Signal-to-Noise Ratio) - Cauchy - Charbonnier - Tiefe glatt - Würfel - Hausdorff - Twerski - Walisisch |
Morphologische Operationen | - Erweiterung - Erosion - Eröffnung - Abschluss |
Kornia ist ein Open-Source-Projekt, das von Freiwilligen entwickelt und gepflegt wird. Unabhängig davon, ob Sie es für Forschungs- oder kommerzielle Zwecke nutzen, denken Sie über ein Sponsoring oder eine Zusammenarbeit mit uns nach. Ihre Unterstützung wird dazu beitragen, das Wachstum und die kontinuierliche Innovation von Kornia sicherzustellen. Kontaktieren Sie uns noch heute und gestalten Sie die Zukunft dieser spannenden Initiative mit!
pip install kornia
pip install -e .
pip install git+https://github.com/kornia/kornia
Kornia ist nicht nur eine weitere Computer-Vision-Bibliothek – es ist Ihr Tor zu müheloser Computer-Vision und KI.
import numpy as np
import kornia_rs as kr
from kornia . augmentation import AugmentationSequential , RandomAffine , RandomBrightness
from kornia . filters import StableDiffusionDissolving
# Load and prepare your image
img : np . ndarray = kr . read_image_any ( "img.jpeg" )
img = kr . resize ( img , ( 256 , 256 ), interpolation = "bilinear" )
# alternatively, load image with PIL
# img = Image.open("img.jpeg").resize((256, 256))
# img = np.array(img)
img = np . stack ([ img ] * 2 ) # batch images
# Define an augmentation pipeline
augmentation_pipeline = AugmentationSequential (
RandomAffine (( - 45. , 45. ), p = 1. ),
RandomBrightness (( 0. , 1. ), p = 1. )
)
# Leveraging StableDiffusion models
dslv_op = StableDiffusionDissolving ()
img = augmentation_pipeline ( img )
dslv_op ( img , step_number = 500 )
dslv_op . save ( "Kornia-enhanced.jpg" )
import numpy as np
from kornia . onnx import ONNXSequential
# Chain ONNX models from HuggingFace repo and your own local model together
onnx_seq = ONNXSequential (
"hf://operators/kornia.geometry.transform.flips.Hflip" ,
"hf://models/kornia.models.detection.rtdetr_r18vd_640x640" , # Or you may use "YOUR_OWN_MODEL.onnx"
)
# Prepare some input data
input_data = np . random . randn ( 1 , 3 , 384 , 512 ). astype ( np . float32 )
# Perform inference
outputs = onnx_seq ( input_data )
# Print the model outputs
print ( outputs )
# Export a new ONNX model that chains up all three models together!
onnx_seq . export ( "chained_model.onnx" )
Sie können Kornia jetzt mit TensorFlow, JAX und NumPy verwenden. Weitere Informationen finden Sie unter Multi-Framework-Unterstützung.
import kornia
tf_kornia = kornia . to_tensorflow ()
Angetrieben von
Interessieren Sie sich für Computer Vision, KI und Open-Source-Entwicklung? Gestalten Sie gemeinsam mit uns die Zukunft von Kornia! Wir sind aktiv auf der Suche nach Mitwirkenden, die dabei helfen, unsere Bibliothek zu erweitern und zu verbessern, um sie noch leistungsfähiger, zugänglicher und vielseitiger zu machen. Egal, ob Sie ein erfahrener Entwickler sind oder gerade erst anfangen, in unserer Community gibt es einen Platz für Sie.
Wir freuen uns, unsere neueste Weiterentwicklung bekannt zu geben: eine neue Initiative zur nahtlosen Integration leichter KI-Modelle in Kornia. Unser Ziel ist es, alle Modelle genauso reibungslos laufen zu lassen wie große Modelle wie StableDiffusion, um sie in vielerlei Hinsicht gut zu unterstützen. Wir haben bereits eine Auswahl leichter KI-Modelle wie YuNet (Gesichtserkennung), Loftr (Feature Matching) und SAM (Segmentierung) hinzugefügt. Jetzt sind wir auf der Suche nach Mitwirkenden, die uns helfen:
Die Grundlage von Kornia ist seine umfangreiche Sammlung klassischer Computer-Vision-Operatoren, die robuste Werkzeuge für die Bildverarbeitung, Merkmalsextraktion und geometrische Transformationen bereitstellt. Wir sind ständig auf der Suche nach Mitwirkenden, die uns dabei helfen, unsere Dokumentation zu verbessern und unseren Benutzern schöne Tutorials zu präsentieren.
Wenn Sie Kornia in Ihren forschungsbezogenen Dokumenten verwenden, wird empfohlen, die Arbeit zu zitieren. Weitere Informationen finden Sie unter ZITIEREN.
@inproceedings { eriba2019kornia ,
author = { E. Riba, D. Mishkin, D. Ponsa, E. Rublee and G. Bradski } ,
title = { Kornia: an Open Source Differentiable Computer Vision Library for PyTorch } ,
booktitle = { Winter Conference on Applications of Computer Vision } ,
year = { 2020 } ,
url = { https://arxiv.org/pdf/1910.02190.pdf }
}
Wir freuen uns über alle Beiträge. Wenn Sie planen, Fehlerbehebungen beizusteuern, tun Sie dies bitte ohne weitere Diskussion. Wenn Sie vorhaben, neue Features, Hilfsfunktionen oder Erweiterungen beizusteuern, öffnen Sie bitte zunächst ein Problem und besprechen Sie das Feature mit uns. Bitte denken Sie daran, die BEITRAGSHINWEISE zu lesen. Die Teilnahme an diesem Open-Source-Projekt unterliegt dem Verhaltenskodex.
Hergestellt mit contrib.rocks.
Kornia wird unter der Apache 2.0-Lizenz veröffentlicht. Weitere Informationen finden Sie in der LICENSE-Datei.