Open Source .NET API pro obrázky
Bezplatná knihovna .NET pro práci s barevnými prostory
Colorful je open source knihovna napsaná v C# pro manipulaci s barvami v obrázcích. API umožňuje širokou škálu funkcí pro manipulaci s barvami včetně převodu barev, chromatické adaptace a převodu mezi pracovními prostory RGB. Colorful také podporuje výpočet korelované barevné teploty (CCT) z chromatičnosti a výpočet chromatičnosti z CCT.
API má několik vzorců pro rozlišení mezi barvami, dále barevné obsahuje definice všech 24 barev Macbeth ColorChecker v sRGB, které jsou užitečné pro kalibraci barev.
Začínáme s barevnými
Doporučený způsob instalace Colorful je přes NuGet. K instalaci Colourful použijte následující příkaz.
Nainstalujte Colorful z NuGet
PM> Install-Package Colourful
Extrahujte metadata z obrázků pomocí C#
Colorful umožňuje extrahovat širokou škálu informací metadat z obrázků. Všechny informace z obrázku můžete extrahovat opakováním adresářů a poté procházením každého tagu v něm. Adresář obsahuje informace o typu metadat a tag obsahuje vlastnosti. Konkrétní informace můžete z obrázků extrahovat pomocí metody directories.OfType().FirstOrDefault().
Extrahujte specifické poznámky výrobce fotoaparátu pomocí C#
Open Source API pro zpracování obrazu Colorful umožňuje extrahovat makernote specifické pro fotoaparáty pro fotoaparáty vyrobené Canon, Apple, Agfa, Casio, DJI, Epson, Fujifilm, Kodak, Kyocera, Leica, Minolta, Nikon, Olympus, Panasonic, Pentax, Reconyx, Sanyo, Sigma/Foveon a Sony.
Převod barev b/t barevných prostorů pomocí C#
Knihovna Open Source Colorful plně podporuje převod mezi barevnými prostory uvnitř aplikace .NET. Umožňuje vývojářům softwaru převádět barvy z jednoho zdrojového barevného prostoru do jediného cílového barevného prostoru pomocí pouhých několika řádků kódu C#. Chcete-li dosáhnout jakéhokoli druhu převodu, musíte nejprve vytvořit objekt převodníku.
Převeďte barvu z sRGB na XYZ
IColorConverter converter = new ConverterBuilder()
.FromRGB(RGBWorkingSpaces.sRGB)
.ToXYZ(Illuminants.D65)
.Build();
RGBColor rgbColor = new RGBColor(1, 0, 0.5);
XYZColor xyzColor = converter.Convert(rgbColor); // XYZ [X=0.45, Y=0.23, Z=0.22]