Avoimen lähdekoodin .NET-sovellusliittymä kuville
Ilmainen .NET-kirjasto väriavaruuksien käsittelyyn
Colorful on C#-kielellä kirjoitettu avoimen lähdekoodin kirjasto kuvien värien muokkaamiseen. API mahdollistaa laajan valikoiman värinkäsittelyominaisuuksia, kuten värimuunnoksen, kromaattisen mukautuksen ja muuntamisen RGB-työtilojen välillä. Colorful tukee myös korreloidun värilämpötilan (CCT) laskemista kromaattisuudesta ja kromaattisuuden laskemista CCT:stä.
API:lla on useita kaavoja värien erottamiseen, ja värikäs sisältää kaikkien 24 Macbeth ColorChecker -värin määritelmät sRGB-muodossa, jotka ovat hyödyllisiä värien kalibroinnissa.
Colorfulin käytön aloittaminen
Suositeltu tapa asentaa Colorful on NuGet. Asenna Colourful käyttämällä seuraavaa komentoa.
Asenna Colorful NuGetista
PM> Install-Package Colourful
Poimi metatiedot kuvista C#:n avulla
Värikäs mahdollistaa laajan valikoiman metadatatietojen poimia kuvista. Voit poimia kaikki kuvan tiedot silmukoimalla hakemistoja ja sitten silmukoimalla jokaisen siinä olevan tunnisteen läpi. Hakemisto sisältää metatietotyyppitiedot ja tunniste sisältää ominaisuudet. Voit poimia kuvista tiettyjä tietoja käyttämällä directories.OfType().FirstOrDefault()-menetelmää.
Pura kamerakohtaiset valmistajan muistiinpanot C#:lla
Avoimen lähdekoodin kuvankäsittelysovellusliittymä Colorful mahdollistaa kamerakohtaisten merkintöjen purkamisen kameroille, jotka on valmistettu Canon, Apple, Agfa, Casio, DJI, Epson, Fujifilm, Kodak, Kyocera, Leica, Minolta, Nikon, Olympus, Panasonic, Pentax, Reconyx, Sanyo, Sigma/Foveon ja Sony.
Värien muunnos b/t väriavaruudet C#:lla
Open Source Colorful -kirjasto tukee täysin muuntamista väriavaruuksien välillä .NET-sovelluksen sisällä. Sen avulla ohjelmistokehittäjä voi muuntaa värejä yhdestä lähdeväriavaruudesta yhdeksi kohdeväriavaruudeksi vain parilla rivillä C#-koodia. Minkä tahansa muuntamisen saavuttamiseksi sinun on ensin rakennettava muunninobjekti.
Muunna väri sRGB:stä XYZ:ksi
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]