Kleurconversie van RGB naar Lab
Wij zijn een groot drukkerijbedrijf in Shenzhen China. Wij bieden alle boekpublicaties, hardcover boekafdrukken, papercover boekdruk, hardcover notitieboek, takboekafdrukken, boekafdrukken met zadelsteken, boekjes printen, verpakkingsdoos, kalenders, alle soorten PVC, productbrochures, notities, kinderboeken, stickers, alles soorten speciale papieren kleurendrukproducten, gamekaart enzovoort.
Bezoek voor meer informatie
http://www.joyful-printing.com. Alleen ENG
http://www.joyful-printing.net
http://www.joyful-printing.org
e-mail: info@joyful-printing.net
Ten eerste, Inleiding
Naarmate de grafische industrie verandert van analoog naar digitaal, is het probleem van nauwkeurige kleurreproductie van cruciaal belang geworden. We moeten kleurenbeheer gebruiken om betere, snellere en nauwkeurigere kleurenafbeeldingen te garanderen. Om kleuruniformiteit en apparaatonafhankelijkheid in het proces van beeldverwerking te bereiken, is het noodzakelijk gestandaardiseerd en gestandaardiseerd kleurbeheer te implementeren.
Het zogenaamde kleurbeheer is om het probleem van de beeldconversie tussen kleuren op te lossen, zodat de kleur van het beeld tijdens het gehele kopieerproces wordt geminimaliseerd. Het basisidee is om eerst een apparaatonafhankelijke referentiekleurenruimte te selecteren, vervolgens het apparaat te karakteriseren en ten slotte een relatie tot stand te brengen tussen de kleurenruimte van elk apparaat en de apparaatonafhankelijke referentiekleurenruimte, zodat het gegevensbestand zich in elk apparaat bevindt . Er is een duidelijke relatie tussen de overgangen. Hoewel het onmogelijk is om alle kleuren op verschillende apparaten exact hetzelfde te houden, kunt u kleurbeheer gebruiken om ervoor te zorgen dat de meeste kleuren hetzelfde of vergelijkbaar zijn om een consistent kleurenkopieffect te bereiken.
Ten tweede, kleurruimteconversie
Kleurruimteconversie verwijst naar het converteren of weergeven van kleurgegevens in één kleurruimte naar overeenkomstige gegevens in een andere kleurenruimte, dat wil zeggen, het gebruiken van de gegevens in verschillende kleurruimten om dezelfde kleur te representeren. In dit artikel wordt de apparaatafhankelijke RGB-kleurruimte geconverteerd naar een apparaatonafhankelijke CIELab-kleurruimte. Elke kleurruimte die aan het apparaat is gekoppeld, kan worden gemeten en gekalibreerd in de CIELab-kleurruimte. Als verschillende apparaatgerelateerde kleuren overeenkomen met hetzelfde punt in de CIELab-kleurruimte, moet de overgang tussen beide kloppen.
Er zijn veel manieren om kleurruimte om te zetten. Dit artikel introduceert voornamelijk 3D-tabelinterpolatie en polynomiale regressie.
1. Driedimensionale tabel opzoekinterpolatie
De driedimensionale opzoektabelmethode is momenteel een veelgebruikt algoritme voor het bestuderen van de omzetting van kleurenruimten. De kerngedachte van het algoritme voor de 3D-opzoektabel is om de bronkleurenruimte te verdelen in een gewone kubus. De gegevens van de acht hoekpunten van elke kubus zijn bekend en de bekende punten van alle bronruimten vormen een driedimensionaal. Opzoektabel. Wanneer een willekeurig punt in de bronruimte wordt gegeven, kunnen de acht gegevenspunten ernaast worden gevonden om een knooppunt van een klein kubusrooster te vormen, en de acht hoekpunten van de kleine kubus worden geïnterpoleerd om gegevens te verkrijgen die overeenkomen met de doelruimte.
De algemene opzoektabelmethode wordt gebruikt in combinatie met de interpolatiemethode en wordt een driedimensionale lookup-tabelmethode met een interpolatiealgoritme. Deze methode kan in drie stappen worden verdeeld:
1 segmentatie: partitioneer de bronkleurenruimte op een bepaald bemonsteringsinterval om een driedimensionale opzoektabel tot stand te brengen;
2 Zoeken: zoek voor een bekend invoerpunt in de bronruimte en zoek de kubus die bestaat uit acht rasterpunten die deze bevatten;
3 Interpolatie: bereken de kleurwaarden op niet-rasterpunten in een raster van kubussen.
Volgens verschillende segmentatiemethoden van bronruimte, zijn algemene interpolatiealgoritmen: trilineaire interpolatie, driehoekige prisma-interpolatie, piramide-interpolatie en tetraëdrische interpolatie.
2. Polynomiale regressie
Het algoritme voor polynomiale regressie is gebaseerd op de aanname dat de associatie van kleurruimten geschat kan worden door een reeks simultane vergelijkingen. De enige noodzakelijke voorwaarde voor het algoritme voor polynomiale regressie is dat het aantal punten in de bronruimte groter moet zijn dan het aantal items in de geselecteerde polynoom. De focus van dit algoritme is om de coëfficiënten van het polynoom te berekenen en vervolgens de gegevens van de bronkleurenruimte in het polynoom te vervangen, waarna het geconverteerde resultaat volgens de vergelijking kan worden verkregen.
Er zijn veel verschillende vormen van polynoom. In dit artikel wordt een polynoom met een aantal items van 6 gebruikt. De specifieke uitdrukking wordt weergegeven in formule (1).
De coëfficiënt van dit polynoom kan worden verkregen uit vergelijking (2).
De uitdrukkingen in de formule (2) zijn respectievelijk de transpositie van de matrix zoals getoond in de formules (3) en (4), en de specifieke expressie is zoals getoond in de formule (5). Het aantal termen dat de veelterm in formule (3) vertegenwoordigt, is in dit onderwerp genomen; het geeft het aantal punten van de geselecteerde bronruimte aan. In dit probleem worden 216 punten verkregen na zes niveaus van segmentatie van de bronruimte (dwz RGB-kleurruimte). Dus neem het. In feite kan voor een polynoom met een termaantal van 6 de coëfficiënt van het polynoom worden verkregen door het te nemen.
In de formule (3) is () de drie kleurwaarden van de bronruimte en () in de formule (4) een van de drie waarden die de kleur in de doelruimte vertegenwoordigen.
Polynomiaal regressie-algoritme is eenvoudig, gemakkelijk te implementeren en heeft een goed conversie-effect; maar de nauwkeurigheid is laag wanneer het aantal items klein is, wanneer het aantal items te groot is, de berekening groot is en de nauwkeurigheid niet noodzakelijk hoog is.
3. Kleurverschil
Bij het evalueren van de kleurreproductiekwaliteit en het regelen van het kleurenreproductieproces, bijvoorbeeld bij het implementeren van kleurbeheer en het evalueren van de kleur van een afdruk, is het vaak nodig om het kleurverschil van de kleur te berekenen om het doel van het regelen van de kleur te bereiken. Op dit moment worden de CIE 1976 Lab uniforme kleurruimte en de bijbehorende kleurverschilformule veel gebruikt in de grafische industrie. De specifieke uitdrukking wordt getoond in formule (6).
Ten derde, het realisatieproces
Allereerst wordt het operatieplatform van dit onderwerp kort geïntroduceerd en worden de methode voor het verkrijgen van de gegevens die in dit onderwerp worden gebruikt en de gedetailleerde stappen voor het realiseren van de kleurruimteconversie in detail uitgelegd.
1. Bedieningsplatform
Het besturingssysteem dat in dit onderwerp wordt gebruikt, is Microsoft Windows XP, de programmeeromgeving Visual C ++ 6.0, de volledige toepassing is gebaseerd op het MFC-toepassingsraamwerk en OpenGL en OpenCV worden ook gebruikt.
2. Gegevensverzameling
De gegevens zijn verdeeld in twee delen: modelleringsgegevens en testgegevens. De modelleringsgegevens worden gebruikt om de coëfficiënten van het polynoom te berekenen. De testgegevens worden gebruikt om de nauwkeurigheid van het algoritme te analyseren. De modelleringsgegevens en testgegevens van de bronruimte en de doelruimte bevinden zich allemaal in Adobe Photoshop. Verzameld.
2.1 verwerving van modelleringsgegevens. In dit onderwerp worden zes niveaus van uniforme segmentatie gebruikt om modelleringspunten te verzamelen en R, G en B respectievelijk 0, 51, 102, 153, 204 en 255. Voer de waarden van R, G en B in de kleurenkiezer van PhotoShop in en noteer de waarden van L, a en b die overeenkomen met de set waarden en noteer ze in de tekst, zoals weergegeven in figuur 1. Een totaal van 63 = 216 sets van waarden werden verkregen.
Figuur 1 Gegevens verkrijgen van de kleurenkiezer
2.2 Overname van testgegevens Dit onderwerp maakt gebruik van acht-niveau niet-uniforme segmentatie om testpunten te verzamelen. R, G en B nemen respectievelijk 0, 36, 72, 108, 144, 180, 216, 255. De acquisitiemethode is dezelfde als hierboven en er worden in totaal 83 = 512 groepswaarden verkregen.
3. Specifieke implementatiestappen
Het stroomdiagram van de specifieke implementatie van dit onderwerp wordt getoond in Figuur 2.
Figuur 2 Stroomschema van het frame
Zoals weergegeven in figuur 2, zijn de specifieke stappen van de programma-implementatie als volgt:
3.1 Start Visual C ++ 6.0 als eerste en stel de OpenCV runtime-omgeving in MFC in.
3.2 Lees de modelleringsgegevens.
3.3 Voltooiing van de berekening van de polynoomcoëfficiënten: volgens formules (3), (4), (5), respectievelijk. De coëfficiënten van het polynoom worden verkregen door achtereenvolgens,, en te verkrijgen.
3.4 Lees de testgegevens.
3.5 Teken een driedimensionaal kleurenoverzicht van het overeenkomstige Lab-model na acht-segment segmentatie van het RGB-model.
3.6 Breng de RGB-waarden van elk punt verkregen door de achttraps segmentatie in de drie polynomen verkregen in stap 3 en bereken de L, a en b waarden van elk punt (hierna aangeduid als de berekende waarde), en converteer RGB kleurruimte naar Lab-kleurruimte door polynomiale regressie.
3.7 Om de voordelen van deze kleurruimteconversiemethode te beoordelen, is het noodzakelijk om te beoordelen door het kleurverschil te berekenen. Voor elke kleur wordt de gemeten waarde verkregen in stap 4 verkregen door het aftrekken van de berekende waarde verkregen in stap 6, en dan wordt het kleurverschil verkregen volgens formule 6, het histogram van de uitstekende verschilverdeling wordt getekend, en het verschil is in het bereik van verschillende kleurverschillen. proportie.
Ten vierde, de resultaten worden weergegeven en geanalyseerd
Volgens de specifieke stappen in de vorige sectie, wordt VC ++ 6.0 gebruikt om de conversie van RGB naar Lab-kleurruimte in PhotoShop te realiseren. Dit gedeelte geeft voornamelijk de lopende resultaten van het programma weer en voert een korte analyse uit.
1. Resultatenweergave
In dit artikel wordt de conversierelatie vastgesteld door uniforme segmentatie op zes niveaus en de nauwkeurigheid van deze methode wordt getest met behulp van acht-niveau niet-uniforme segmentatie. Het histogram van de kleurverschilverdeling wordt getekend en het kleurverschil wordt geteld. De belangrijkste interface van de programma-implementatie wordt getoond in figuur 3.
Figuur 3 RGB-CIELab-interface voor het converteren van kleurruimte-conversie
Het histogram van de kleurverschilverdeling en gerelateerde statistische gegevens worden getoond in figuur 4.
Figuur 4 Kleurverschil statistiekeninterface
De driedimensionale kleurweergave van het bijbehorende Lab-model na acht-segment segmentatie van het RGB-model wordt getoond in Figuur 5. Nadat het RGB-model is verdeeld in acht niveaus, wordt de polynoom regressiemethode gebruikt om te converteren naar de driedimensionale kleur weergave van het Lab-kleurenruimtemodel, zoals weergegeven in Afbeelding 6.
Figuur 5 Driedimensionaal kleurenaanzicht van de Lab-kleurenruimte na de acht-delige gesplitste RGB-kleurruimte
Figuur 6 Driedimensionaal kleuroverzicht geconverteerd naar Lab-kleurruimte na het splitsen van de RGB-kleurruimte in acht niveaus
2. Analyse en samenvatting van de resultaten
Zoals getoond in FIG. 4, het maximale kleurverschil na kleurruimteconversie van 512 kleuren is 28, en de kleurverschilverdeling is niet uniform als geheel.
Volgens de statistieken zijn er 74 kleuren in het bereik van 0 ~ 5, goed voor 14,45% van het totaal; 264 kleuren in het bereik van 5-10, goed voor 51,56% van het totaal; het kleurverschilbereik ligt tussen 10 en 15. 157 kleuren, goed voor 30,66% van het totaal; chromatische aberratie varieerde van 15 tot 20 met 13 kleuren, goed voor 2,54% van het totaal; kleurverschil groter dan 20 voor 4 kleuren, goed voor 0,78% van het totaal, en de gegevens toonden aan dat het kleurverschil Tussen de vier kleuren groter dan 20, het zuivere blauw (0,0,255) en het zuivere groen (0,255,0) hebben het grootste kleurverschil en de andere twee kleuren hebben een kleurverschil van minder dan 21. Voor deze 512 kleuren is het kleurverschil maximaal 28, het minimum 0 en het gemiddelde kleurverschil 9. Over het algemeen bereik van chromatische aberraties is meestal geconcentreerd tussen 5 en 15.
Wanneer we figuur 5 vergelijken met figuur 6, kunnen we zien dat de RGB-kleurenruimte wordt omgezet naar het Lab-kleurenruimtemodel door polynomiale regressiemethode, die vergelijkbaar is met de vorm van het Lab-kleurenruimtemodel verkregen door de test, wat aangeeft dat de verkregen resultaten door dit onderwerp zijn ideaal.
V. Samenvatting
Het is duidelijk dat het gebruik van polynomiale regressie voor het uitvoeren van kleurruimteconversie relatief nauwkeurig is. De polynoom van verschillende artikelnummers kan worden gebruikt om de conversieresultaten van dezelfde bronruimte te vergelijken met dezelfde doelruimte; daarbij het vinden van het optimale aantal polynomen in het proces van het omzetten van de bronruimte in de doelruimte. Daarom is verder onderzoek op dit gebied nodig.

