BE1030282A1 - Methode voor niet-lineaire compensatie in display-toepassingen - Google Patents

Methode voor niet-lineaire compensatie in display-toepassingen Download PDF

Info

Publication number
BE1030282A1
BE1030282A1 BE20225881A BE202205881A BE1030282A1 BE 1030282 A1 BE1030282 A1 BE 1030282A1 BE 20225881 A BE20225881 A BE 20225881A BE 202205881 A BE202205881 A BE 202205881A BE 1030282 A1 BE1030282 A1 BE 1030282A1
Authority
BE
Belgium
Prior art keywords
display
compensation
values
linear
colors
Prior art date
Application number
BE20225881A
Other languages
English (en)
Other versions
BE1030282B1 (nl
Inventor
Robbie Thielemans
Vince Dundee
Original Assignee
Stereyo
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Stereyo filed Critical Stereyo
Priority to EP23160521.3A priority Critical patent/EP4243006A1/en
Publication of BE1030282A1 publication Critical patent/BE1030282A1/nl
Application granted granted Critical
Publication of BE1030282B1 publication Critical patent/BE1030282B1/nl

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/20Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
    • G09G3/2003Display of colours
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/02Improving the quality of display appearance
    • G09G2320/0242Compensation of deficiencies in the appearance of colours
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/04Maintaining the quality of display appearance
    • G09G2320/041Temperature compensation
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/06Adjustment of display parameters
    • G09G2320/0666Adjustment of display parameters for control of colour parameters, e.g. colour temperature
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/06Adjustment of display parameters
    • G09G2320/0693Calibration of display systems
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/16Calculation or use of calculated indices related to luminance levels in display data

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)

Abstract

De uitvinding heeft betrekking op displays, waaronder bijvoorbeeld LED (light-emitting diode) displays, maar is daartoe niet beperkt. Meer in het bijzonder heeft de uitvinding betrekking op het verkrijgen van nauwkeurigere kleur- en/of grijswaardenrepresentatie in dergelijke displays door middel van correctiemethoden gebaseerd op het compenseren van niet-lineariteiten (veroorzaakt door pixeldrivers).

Description

1 BE2022/5881
METHODE VOOR NIET-LINEAIRE COMPENSATIE
IN DISPLAY-TOEPASSINGEN
Technisch veld
De uitvinding heeft betrekking op displays, zoals bijvoorbeeld LED (light-emitting diode) displays, maar is niet beperkt tot deze specifieke displaytechnologie. Meer in het bijzonder heeft de uitvinding betrekking op het verkrijgen van nauwkeurigere kleur- en/of grijswaardenweergave in dergelijke displays door middel van (niet-lineaire) correctie- of compensatiemethoden, zelfs en in het bijzonder toegepast na kalibratie (op basis van lineaire vergelijkingen), maar ook wanneer geen kalibratie is toegepast.
Achtergrond van de uitvinding
Uit de eerdere onthullingen en toepassingen is duidelijk geworden dat bij het kalibreren van een display (of beeldscherm) voor kleur en helderheid, uniformiteit in real-time moet worden uitgevoerd. Voor LED-displays - tot op de dag van vandaag - worden alle berekeningen gemaakt in de lineaire kleurruimte en wordt geen rekening gehouden met niet-lineariteiten die bestaan bij het genereren van de respectieve lichtuitvoer van de individuele R(ood), G(roen) en B(lauw) kleur per individuele pixel.
De lichtuitvoer van traditionele LED's wordt gegenereerd met behulp van PWM (Pulse Width
Modulation) die inwerkt op constant current drivers (in het algemeen pixeldrivers, mogelijk ook wel PWM-drivers of LED-drivers genoemd). Het is algemeen bekend in de LED-industrie (zie bijv. "Handbook of Visual Display Technology": Thielemans R. (2012) LED Display Applications and
Design Considerations — Springer, Berlin, Heidelberg. https://doi.org/10.1007/978- 3-540- 79567-4 76) dat LED's enigszins van kleur veranderen wanneer de aandrijfstroom (drive current) wordt gewijzigd. Er wordt dus een constante stroom toegepast. Echter, om verschillende redenen is de lineariteit tussen digitaal gegenereerde PWM en gemeten lichtuitvoer op de individuele LED's niet gegarandeerd. Dit betekent dus dat de ‘traditionele’
X,Y,Z-kleurcorrectieberekeningen (bijvoorbeeld bekend als standaardkalibratie, meestal berekend in lineaire ruimte) die werken op PWM en de veronderstelde ‘constant current drivers’
2 BE2022/5881 niet helemaal correct zijn. Verdere correctie of compensatie (voor niet-lineariteiten) is daarom nodig.
Beschrijving van de achtergrond (aangaande kalibratie)
Er wordt nu meer gedetailleerde achtergrond gegeven, waarvoor ook kan worden verwezen naar eerdere octrooiaanvragen van dezelfde Aanvrager, d.w.z. de Amerikaanse octrooiaanvrage publicatie US2020/0286424, getiteld "REAL-TIME DEFORMABLE AND TRANSPARENT DISPLAY" en gepubliceerd op 10 september 2020.
Terwijl elke individuele LED kan afwijken in b.v. kleur of helderheid, wordt kalibratie als belangrijk beschouwd. De traditionele kalibratievideopijplijn in overeenstemming met de techniek wordt getoond in Figuur 1, die een flow weergeeft voor de bepaling van de kleuruitvoer
Rout, Gout, Bout voor de primaire kleuren RGB op basis van de kalibratiematrix (A), indien bepaald, en op de kleurinvoer Rin, Gin, Bin voor de primaire kleuren RGB zoals ontvangen. Zoals hier aangegeven in Figuur 1, worden de kalibratiewaarden voor elke RGB-pixel opgehaald uit een geheugenlocatie, afhankelijk van de positie (rij, kolom) van de pixel zelf. Als laatste stap hier in de flow, kan een temperatuurcorrectie worden toegepast om een nog betere kleurweergave te krijgen. Het kalibratieprincipe om lichtgevende elementen (bijv. LED's, OLED's) of pixels uniform op een scherm te laten lijken, is gebruikelijk, evenals de wiskunde erachter. Dit principe is gebaseerd op individuele metingen bij een bepaalde aandrijfstroom voor elke pixel in het display. Bij wijze van voorbeeld wordt het wiskundige principe nader toegelicht voor traditionele
RGB-LED's, maar het zou ook kunnen worden toegepast op elk ander LED-cluster met bepaalde kleuren.
Neem aan dat alle RGB-LED's zijn gemeten bij een bepaalde gedefinieerde stroom en gedefinieerde temperatuur. Deze meting kan gebeuren met b.v. een spectrometer. Dit levert x, y en Y-meetwaarden op voor elk van de R, G en B-kleuren in één LED. In het geval van een RGB (Rood, Groen, Blauw) display, zijn de metingen b.v. uitgevoerd in de CIE 1931-kleurruimte, waarbij elke kleur wordt weergegeven in (x, y) en Y, bijvoorbeeld (x,y,Y worden geconverteerd naar X,Y,Z voor het werken in lineaire ruimte):
Rin = (Rinx, Riny, RinY) = (RinX,RinY,RinZ)
3 BE2022/5881
Gin = (Ginx,Giny,GinY) = (GinX,GinY,GinZ)
Bin = (Binx,BinY,BinY) = (BinX,BinY, BinZ)
Opgemerkt wordt dat (x, y) genormaliseerde waarden zijn van X, Y en Z welke de zogenaamde tristimuluswaarden zijn, terwijl Y een maat is voor de helderheid van een kleur.
Rood Groen Blauw 0,6859 198,70 |0,215 |0,7171 | 250,00 |0,131 |0,107 | 66,00 439,64 | 198,70 74,95 | 250,00 | 23,67 |80,80 | 6600 | 470,02
RinX GinX BinX 43964 7495 80,80
Of in matrix formaat: |RinY GinY BinY| =|198,70 250,00 66,00
RinZ GinZ BinZ 2,63 23,67 470,02
Kleurconversies worden uitgevoerd met behulp van de volgende formules:
X x=
X+Y+4Z
Y
JE XFY+Z
Z 1 z=—_ = —X-—
X+Y+Z y x
X=Y- y z=L (1 ) =— xy y
Nu kan worden gedefinieerd wat de kleur targets moeten zijn. (Er zijn standaarden gedefinieerd voor bijv. HDTV, NTSC, PAL, REC2020 …) Dit zijn de echte kleuren die op het display moeten worden weergegeven.
Rood Groen Blauw
NTSC 1953
Adobe RGB 98 | 0,64 |033 |1 [022 [071 |1 [01 |006 |1
PAL |o63 |033 |1 |03 |06 |1 |015 |006 |1
4 BE2022/5881
Alle LED's moeten dus worden 'gekalibreerd' op deze individuele punten, zoals eerder uitgelegd.
Men kan de kleuren volgens deze normen instellen, maar het is geen must omdat de wiskunde algemeen is.
Target Rode kleur kan gedefinieerd worden als:
Rtarg = (Rtargx,Rtargy,RtargY) = (RtargX,RtargY,RtargZ)
Vervolgens kan de lineaire relatie tussen de target waarden en de ‘gemeten waarden’ worden gedefinieerd (voorbeeld hier voor Rood kanaal).
RonR betekent hoeveel rood van de native LED moet worden gebruikt in de gewenste (target)kleur Rood. GonR betekent hoeveel Groen van de originele LED-kleur aan dit Rood moet worden toegevoegd, enzovoort.
RtargX = RinX x RonR + GinX x GonR + BinX x BonR
RtargY = RinY x RonR + GinY x GonR + BinY x BonR
RtargZ = RinZ x RonR + GinZ x GonR + BinZ x BonR
Of in matrix vorm wordt dit:
RinX GinX BinX RonR RtargX
RinY GinY BinY | x |GonR| = |RtargY
RinZ GinZ BinZ BonR RtargZ
Dit ook uitvoeren voor Groen en Blauw leidt tot volgende matrixformule:
RinX GinX BinX RonR RonG RonB RtargX GtargX BtargX
RinY GinY BinY|x|GonR GonG GonB|= |RtargY GtargY BtargY
RinZ GinZ BinZ BonR BonG BonB RtargZ GtargZ BtargZ
Omdat de invoer bekend is en targets bekend zijn, kan de matrix worden opgelost voor RonR enz.:
RonR RonG RonB (A) = |GonR GonG GonB
BonR BonG BonB
RinX GinX BinX] * [RtargX GtargX BtargX = in Giny pin x |Reargr GtargY Bua
RinZ GinZ BinZ RtargZ GtargZ BtargZ
De targets kunnen er als volgt uitzien: 5 (merk hier op dat de helderheid Y voor alle targets is genormaliseerd naar 1)
Rood Groen Blauw 064 [033 [100 [030 |060 |100 |014 [012 [100 194 |100 [009 [050 [100 [017 |117 [1400 [617
We weten reeds van hierboven dat
RinX GinX BinX 439,64 7495 80,80 in GinY pin is: se 250,00 66,00
RinZ GinZ BinZ 2,63 23,67 470,02
RinX GinX Binx]"
RinY GinY BinY wordt dus:
RinZ GinZ BinZ 0,002616 —0,00075 —0,00034 —0,0021 0,004658 000029 9,13E — 05 —0,00023 0,002144
En de uiteindelijke uitkomst voor (A) wordt dan:
RonR | 0,43% 0,05% 0,02% 0,06% 0,36% 0,04% 0,01% 0,02% 1,31%
Omdat de Y-waarden in de targets zijn genormaliseerd, kan nu extra informatie worden toegevoegd om niet alleen de LED-gekalibreerde kleuren in te stellen op een targetkleur, maar de helderheid van elke individuele targetkleur te gebruiken om het display in te stellen op een vast witpunt wanneer alle RGB-kleuren zijn ingeschakeld.
In dit voorbeeld is het display ingesteld op het volgende witpunt:
6 BE2022/5881 0,423 0,399 480,00 508,87 480,00 214,14
RX GX BX R WX
RY GY BY|Xx|G|=|WY
RZ GZ BZ B WZ
WX, WY, WZ is het witpunt. De RX, GX, … is in dit geval de targetkleurenmatrix aangezien deze targetkleuren gebruikt gaan worden, en de helderheid van de targets wordt gewijzigd om het juiste witpunt te bereiken. Daarom moet de vergelijking voor RGB worden opgelost.
R] [RX GX Bx] [WX
G|=]RY GY BY] X|WY
B RZ GZ BZ WZ
RX GX BX 194 0,50 1,17 er GY ay wordt dan: ra 1,00 100
RZ GZ BZ 0,09 017 6,17
RX GX BX]? 0,690697674 —0,332558 —0,07674 er GY ay wordt dan: 0690418005 1,364535 008895
RZ GZ BZ 0,00872093 —0,031977 0,165698
R 175,4153 wordt dan: [20.0120
B 24,5707
Dus nu is de uiteindelijke target met Y-informatie toegevoegd: 175,4153 |0,30 |0,60 | 280,0140 24,5707
Het laatste nog te doen, is het toepassen (d.w.z. schalen) van de uiteindelijke vermenigvuldigingsfactoren op (A): 75,27% | RonR _|Gr |13,97% 0,44%
Rg | 9,68% 99,62% 0,98%
Rb | 2,48% 4,83% _|BonG |Bb | 32,18%
Merk op dat Rr=RonR, Rg=GonR, Rb=BonR en
7 BE2022/5881 dat Gr=RonG, Gg=GonG, Gb=BonG en dat Br=RonB, Bg=GonB, Bb=BonB.
En dit is de matrix (A) die kan worden gebruikt in de videopijplijn van Figuur 2, die een schema vertegenwoordigt dat kan worden gevolgd voor de berekening van kleuruitvoer Rout, Gout,
Bout op basis van de kalibratiematrix (A) en de kleurinvoer Rin, Gin, Bin zoals ontvangen:
RonR RonG RonB (Rout, Gout, Bout} = [GonR GonG GonB|x (Rin, Gin, Bin)
BonR BonG BonB
Opgemerkt wordt dat het schema van Figuur 2 beveiligd is tegen vastlopen door middel van het voorzien van Rclip, Gclip, Bclip in het geval dat de maximale waarde zou worden overschreden, of in het geval dat een negatief resultaat wordt bereikt.
Hiermee is de wiskunde uiteengezet voor de ‘eenvoudige kalibratie.
De volgende stap is om de kalibratie inhoudsafhankelijk te maken door middel van zogenaamde inhoudsafhankelijke kalibratie.
De reden waarom dit eerder is uitgevonden, zoals bijvoorbeeld beschreven in eerdere octrooiaanvrage US2020/0286424 van dezelfde Aanvrager (en inmiddels veelvuldig getest en geïmplementeerd) is tweeledig: 1/ visueel (perceptueel probleem) bij het kalibreren van blauwe kleuren, resulterend in verbetering van de perceptuele kleurdiepte, en 2/ vanwege problemen met betrekking tot Blauw kalibratie. Beide worden nu verder besproken. 1/ Visueel (perceptueel probleem) bij het kalibreren van blauwe kleuren, wat resulteert in een verbetering van de perceptuele kleurdiepte
De achtergrond van deze uitvinding is afgeleid van de visuele parameters die worden uitgelegd in "Handbook of Visual Display Technology": Thielemans R. (2012) LED Display Applications and
Design Considerations - Springer, Berlin, Heidelberg. Hier is een kleine samenvatting van de factoren van het menselijk oog die zijn gekwantificeerd, maar (zoals later besproken) niet volledig.
8 BE2022/5881 e Kleurwaarneming van het menselijk oog is het meest gevoelig in x-richting en minder in y-richting (zie bijv. MacAdam in “Handbook of Visual Display Technology”). Echter — en dit is nog niet volledig gekwantificeerd — dit veronderstelt dat alle kleuren dezelfde helderheid hebben. Wanneer de helderheid van kleuren wordt gevarieerd, is het bewezen dat de kleurperceptie van het menselijk oog verandert, maar hiervoor is geen wiskunde beschikbaar. e Wat betreft resolutie, oftewel hoe mensen de scherpte van een foto of afbeelding waarnemen, is deze het gevoeligst in de Rode component. De minst gevoelige is de
Blauwe component. Het beste voorbeeld om dit te laten zien is het lezen van blauwe tekst op een zwarte achtergrond. Dit is veel moeilijker in vergelijking met het lezen van een rode tekst op een zwarte achtergrond. e Het menselijk oog is ook niet gevoelig voor geleidelijke helderheidvariaties. Het beste voorbeeld is b.v. een projector of beamer. De gemeten helderheid in de hoeken is slechts 25% ten opzichte van de helderheid in het centrum (100%). Mensen zullen dit als ‘uniform! ervaren. Directe verschillen in helderheid zullen veel sneller worden waargenomen (binnen tolerantiegrenzen). 2/ Problemen met betrekking tot Blauw kalibratie
Stel dat men 2 verschillende blauwe LED's heeft die men wil kalibreren naar dezelfde Blauwe kleurtarget. Om dezelfde target te bereiken, moeten enkele weinige Rode en Groene toevoegingen worden aangebracht om de juiste kleur te krijgen. Wanneer gemeten met een spectrometer (en ook op sommige camera's), zullen deze LED's perfect worden afgesteld en beide hebben dezelfde X, Y en Z. Echter, wanneer ze door een mens worden bekeken, zal de
Blauwe LED met de meeste 'rode' toevoeging worden waargenomen als bijna donker, roodachtig in vergelijking met 'witachtige' Blauwe LED waar Groen meer is toegevoegd. Dit fenomeen is ook afhankelijk van de kijkafstand. Het fysieke fenomeen dat gebeurt, is dat het ‘menselijke’ oog 'vergrendelt' op de smalbandige rode emitter (onthoud dat het menselijk oog gevoelig is voor 'resolutie'). Deze ‘vergrendeling’ op de Rode frequentie heeft tot gevolg dat waargenomen Blauwe componenten niet meer ‘zichtbaar’ zijn en dus een totaal andere visuele waarneming opleveren. De CIE-standaard is gemaakt voor breedbandkleuremitters en niet voor smalbandige emitters, en houdt dus geen rekening met deze 'perceptie'. Ook - zoals eerder vermeld - houdt het geen rekening met helderheid. Dus, hoewel er veel (bewezen) wiskunde
9 BE2022/5881 beschikbaar is over kleuren, is de menselijke perceptie nog steeds ‘koning’. Als conclusie kunnen we stellen dat hoewel men Blauwe LED's kan kalibreren om volledig gelijk te zijn volgens CIE, de perceptie van kleur toch anders is.
Aan de andere kant wordt een variatie in helderheid in Blauw waargenomen als een kleurvariatie en dit wordt weergegeven in Figuur 3. Dezelfde RGB-kleur in Blauw met verschillende helderheid (0,0,152) aangegeven als B1 versus (0,0,255) aangegeven als B2 wordt dieper Blauw waargenomen. En deze kleur (0,0,255) B2 komt 'visueel' dichter bij (0,38,255) aangegeven als B3 in vergelijking met (0,0,152) B1, terwijl technisch (0,0,152) B1 en (0,0,255) B2 dezelfde kleuren zijn .
Dit betekent - voor kalibratiedoeleinden van displays - dat in het geval dat Blauwe batches van kleuren moeten worden gekalibreerd, helderheidsvariaties een veel betere ‘waargenomen! uniformiteit zullen opleveren. Als gevolg hiervan hebben LED's die deze Blauwe helderheidsvariatie nodig hebben, een andere matrix nodig. Vandaar de noodzaak van twee matrices. Maar variërende helderheid van een targetkleur heeft tot gevolg dat (indien gebruikt met ook R en G) het witpunt verandert. Dus de LED's die Blauw kalibratie nodig hebben door de
Blauwe helderheid te wijzigen, geven een totaal ander witpunt. Dit is helemaal niet wenselijk.
Daarom bestaat de oplossing in het gebruik van een factor die inhoudsafhankelijk is. Deze factor bepaalt wanneer de 'Blauwe' matrix of de 'normale' matrix moet worden gebruikt.
We begrijpen nu beter dat dit principe niet alleen handig is voor het ‘kalibreren’ van een display, maar ook kan worden gebruikt om de kleurdieptewaarneming te verbeteren (en dit werkt ook op Groen, Rood …). Als voorbeeld, is uit de LED-industrie bekend dat traditionele Blauwe LED's (vaak) niet ‘diep’ genoeg van kleur zijn. Meestal zijn ze boven 470nm, terwijl wenselijk 460nm is. Het veranderen van een 470nm Blauwe LED om te spelen bij lage helderheid geeft de visuele indruk dat het speelt op 460nm.
Een belangrijke kanttekening is dat, aangezien nu 'visuele waarneming’ in beeld wordt gebracht, de strikte bewoording van 'kalibreren' van een display hier niet langer van toepassing is, aangezien het woord 'kalibratie' perfecte / meetbare uniforme instellingen impliceert op basis van rechttoe-rechtaan metingen en wiskundig correcte aanpassingen.
10 BE2022/5881
We eindigen met een voorbeeld van hoe inhoudsafhankelijke kalibratie kan worden bereikt terwijl gebruik wordt gemaakt van de videopijplijn zoals weergegeven in Figuur 4, die een flow weergeeft voor de bepaling van de kleuruitvoer Rout, Gout, Bout voor de primaire kleuren RGB op basis van de kalibratie gedefinieerd door 2 matrices Matrix1, Matrix2 en op de kleurinvoer
Rin, Gin, Bin voor de primaire kleuren RGB zoals ontvangen. De uiteindelijke kalibratiematrix
Mfinal is dan b.v. gedefinieerd door deze 2 matrices en hun gewicht, gedefinieerd door de zogenaamde Factor. We kunnen bijvoorbeeld Mfinal = Factor x Matrix1 + (1-Factor) x Matrix2 hebben.
Opgemerkt wordt dat de matrices (vanwege variaties in LED's) voor elke individuele RGB-LED anders zijn. Onderstaand voorbeeld wordt uitgelegd aan de hand van één LED.
Men definieert een matrix die moet worden gebruikt wanneer alleen Blauw moet worden weergegeven (MBonly) en men definieert een matrix wanneer Blauw wordt gebruikt terwijl ook
Groen en Rood worden weergegeven (MBmix). De matrices worden op dezelfde manier afgeleid als eerder uitgelegd in het ‘traditionele’ voorbeeld. Om hier een voorbeeld te geven, kunnen de matrices worden afgeleid door de targetkleuren helderheid van Blauw te wijzigen.
De target voor MBmix gebruikt dezelfde targetwaarden als in het vorige voorbeeld (cfr. witpunt): 0,64 |0,33 |175,4153 | 0,30 |0,60 |280,0140|0,14 [012 | 24,5707
En dit levert de matrix MBmix:
Rr — |75,27% |RonR |Gr _ |13,97% |RonG |Br __ |044% |RonB
Rg | 968% | GonR |Gg | 99,62% |GonG |Bg |0,98% |GonB
Rb _|248% |BonR |Gb — | 483% |BonG |Bb — |32,18% |BonB
Voor de matrix alleen Blauw (MBonly) zijn de targets ingesteld op: 0,64 |0,33 |175,4153 | 0,30 |0,60 |280,0140|0,14 [012 | 12,2854
Dit geeft een totaal verkeerd witpunt, maar het target Blauw wordt in dit voorbeeld ingesteld op 50%.
11 BE2022/5881
En dit levert de matrix MBonly:
Rr — |75,27% |RonR |Gr _ |13,97% |RonG |Br __ |044% |RonB
Re [9.68% | GonR |G | 99,62% |GonG |Bg |0,98% |GonB
Rb [123% |BonR |Gb — | 240% |BonG |Bb —_|15,97% |BonB
Aangezien alleen de helderheid van target Blauw is gewijzigd, worden in dit voorbeeld alleen
BonR, BonG en BonB beïnvloed. Het is aan de verbeelding van de gebruiker om allerlei instellingen aan te passen en ermee te spelen. Men kan zelfs geleidelijk veranderen b.v. Blauw naar Groen met behulp van deze pijplijn wanneer een bepaalde parameter in de inhoud verandert.
De volgende vraag die moet worden beantwoord, is hoe te definiëren wanneer welke matrix moet worden gebruikt. Aangezien we in dit voorbeeld een waargenomen diep Blauwe kleur willen laten zien, wordt van het volgende uitgegaan: e MBonly moet voor 100% worden gebruikt als de te tonen inhoud alleen blauw is e MBmix moet voor 100% worden gebruikt als er sprake is van een substantiële mix van Rood en Groen
De uiteindelijke te gebruiken matrix is dus:
Mfinal = Factor x MBmix + (1-Factor) MBonly
Wanneer Factor = 1, betekent dit Mfinal = Mbmix. Wanneer Factor = 0, Mfinal = MBonly.
Vervolgens definiëren we een formule die rekening houdt met bovenstaande aannames en die we ook in real-time kunnen implementeren:
Factor = max (2x(R+ G)/(R+G+B);1)
Factor = 0 wanneer alleen Blauw moet worden weergegeven. 0 < Factor < 1 wanneer Blauw een ‘geringe’ betrokkenheid heeft bij de te tonen content.
Factor > 1 (clipped) wanneer Blauw een substantieel aandeel heeft in de mix van kleuren.
12 BE2022/5881
Er zijn allerlei andere formules denkbaar, maar dit voorbeeld heeft het voordeel dat het vrij eenvoudig kan worden geïmplementeerd in real-time FPGA-berekeningen. Voorbeelden van
Factoren zijn te vinden in de tabel in Figuur 5.
Verwijzend naar de tabel van Figuur 5, in het geval dat Rood = 0,25, Groen = 0 en Blauw = 0,5 dan wordt Factor 0,667.
De uiteindelijke berekening Mfinal wordt dan: 75,27% | RonR _|Gr |13,97% 0,44%
Rg | 9,68% 99,62% 0,98%
Rb | 2,07% 4,03% _|BonG |Bb | 26,83%
Doel van de uitvinding
Het doel van de uitvinding is te zoeken naar een praktische manier om afwijkingen als gevolg van niet-lineariteiten (veroorzaakt door de pixeldrivers) te bepalen en vervolgens, eenmaal vastgesteld, hoe deze afwijkingen te corrigeren of (real-time) te compenseren. Het is verder te bedoeling om een fysieke (constant current driver) implementatie (van de correctie of compensatie) te definiëren die ook de berekencomplexiteit in LED-aandrijfsystemen vermindert.
Samenvatting van de uitvinding
In het kort, verschaft de uitvinding een methode voor een verbeterde kleur- en/of grijsschaalweergave van lichtgevende displays door middel van niet-lineaire compensatie, en bovendien elektronische systemen voor het implementeren van een dergelijke methode, hetzij globaal (op basis van FPGA), hetzij lokaal (chip gebaseerd).
In het bijzonder, erkennend dat het gebruik van kalibratie zoals bekend uit de techniek (en die in wezen lineaire relaties veronderstellen) onvoldoende is, b.v. voor hoge-kwaliteit displayperformantie, moet een extra correctie of compensatie (vanwege niet-lineariteiten) worden bepaald en gebruikt. Er moet echter worden gezegd dat zelfs in het geval dat er geen kalibratie heeft plaatsgevonden, er niet-lineariteiten optreden, en daarom is hoe dan ook een
13 BE2022/5881 correctie of compensatie vereist om een betere kleur- en/of grijswaardenuitvoer van video of afbeeldingen die worden weergegeven te verkrijgen. In tegenstelling tot de standaard kalibratiestappen, waarin vanwege het samenspel tussen (primaire) kleuren (3x3) matrices worden gebruikt, uitgevoerd per displaypixel, kan het voor de extra correctie of compensatie voldoende zijn om dit te doen voor slechts één (primaire) kleur en per cluster van displaypixels.
Opgemerkt wordt dat de kalibratie afhankelijk kan zijn van een display-inhoudcontext en/of display-opstelling, dus inhoudsafhankelijke kalibratie kan worden gebruikt zoals bekend in de techniek. De niet-lineaire compensatie kan gebaseerd zijn op de helderheid (Y-waarde van kleurruimtecoördinaten) gedefinieerd door een wiskundige formule. Als alternatief kan op de compensatie worden vertrouwd op wat is opgeslagen in één of meer opzoektabellen (of geheugen), die elk bestaan uit invoerwaarden en corresponderende uitvoerwaarden waarbij rekening wordt gehouden met de niet-lineariteiten. Gezien de hoeveelheid (benodigde) opslagruimte voor de niet-lineaire compensatie, kan het gebruik van meerdere kleine opzoektabellen (met verminderde bit-representatie) in plaats van één enkele grote worden voorgesteld, inclusief het uitvoeren van interpolatieberekeningen tussen deze kleine opzoektabellen. Verder erkennend dat het bovenstaande nog steeds onvoldoende kan zijn voor hoge-kwaliteit displayperformantie, kan een aanvullende temperatuurcorrectie worden toegepast.
Voor sommige aspecten van de onderhavige uitvinding die hieronder verder worden beschreven, kan worden verwezen naar een eerdere aanvraag van dezelfde Aanvrager, waaronder bijvoorbeeld WO2019/215219 A1, getiteld "STANDALONE LIGHT-EMITTING
ELEMENT DISPLAY TILE AND METHOD" en gepubliceerd op 14 november 2019, en
US2020/0286424, getiteld “REAL-TIME VERVORMBARE EN TRANSPARANTE DISPLAY" en gepubliceerd op 10 september 2020. Wanneer dit relevant lijkt voor één van de aspecten van de onderhavige uitvinding, zal deze verwijzing in het bijzonder en expliciet hieronder worden gemaakt.
Volgens een eerste aspect van de uitvinding, wordt een werkwijze verschaft voor het bepalen van niet-lineaire display pixeldriver compensatie uitgevoerd door een verwerkingssysteem van (of voor) een licht-emitterend display dat wordt gekenmerkt door één of meer kleuren, waarbij genoemd licht-emitterend display pixels omvat die worden gecontrolleerd door pixeldrivers. De ‘bepalings'methode omvat de volgende stappen: (i) het meten van (real-time) (on-display)
14 BE2022/5881 (kleur)waarden voor ten minste één van de één of meer kleuren (en/of één of meer pixels, d.w.z. een pixel of cluster van pixels); (ii) het berekenen van (theoretische) (kleur)waarden voor de ten minste één van de één of meer kleuren (op basis van een lineair verband) (en/of één of meer pixels); (iii) het vergelijken van gemeten en corresponderende berekende waarden; (iv) het waarnemen (per kleur en voor ten minste één kleur) van een afwijking in de gemeten waarden als gevolg van niet-lineariteiten (veroorzaakt door de pixeldrivers), en het bepalen van deze afwijking als de niet-lineaire pixeldriver compensatie. Voor de waarden wordt verwezen naar de kleurruimte of lineaire ruimte, gedefinieerd door 3 coördinaten (x, y, Y) of (X, Y, Z). In het algemeen, en bij voorkeur, zal het verwerkingssysteem intern in het display zijn aangebracht.
Het kan echter zijn, technisch gezien, om een verwerkingssysteem buiten of extern t.o.v. het display te hebben. In het algemeen kan één pixeldriver worden gebruikt voor een cluster van pixels, bijvoorbeeld een veelvoud van 16, zoals b.v. 64 of 256 pixels (per cluster).
Volgens een uitvoeringsvorm wordt het licht-emitterend display gekenmerkt door ten minste drie (primaire) kleuren.
Het bepalen van de niet-lineaire display pixeldriver compensatie (en dus alle stappen die daarvan deel uitmaken, of hierbij betrokken zijn) kan worden uitgevoerd voor elke displaypixel of cluster van displaypixels.
Volgens een uitvoeringsvorm wordt, voorafgaand aan alle stappen (i) tot (iv), kalibratie uitgevoerd door middel van de volgende stappen: (a) het lezen, laden of invoeren van de (native) (kleur)waarden (in weergave met 3 coördinaten) gemeten (wat je hier zou kunnen interpreteren als een pre-kalibratiemeting, d.w.z. een meting voordat de kalibratieberekeningen of bewerkingen plaatsvinden) (met een spectrometer) voor de één of meer kleuren van (elk van de pixels van) het display; (b) het lezen, laden of invoeren van de targetwaarden (zoals waargenomen door een menselijk oog en/of een camera die de displayuitvoer opneemt) voor één of meer kleuren van (elk van de pixels van) het display; en (c) voor de één of meer kleuren, het berekenen (via matrixbewerkingen) van corresponderende kalibratiematrices op basis van de gemeten en targetwaarden (in het bijzonder op basis van het verschil daartussen). Rekening houdend met deze kalibratie, en terug verwijzend naar de 'bepalings'methode zelf, kunnen wanneer nu stap (ii) van het berekenen van (theoretische) (kleur)waarden wordt uitgevoerd, de kalibratiematrices worden gebruikt. De kalibratiematrices kunnen gebaseerd zijn op display- inhoudcontext en/of display-opstellingen, zoals bekend bij inhoudsafhankelijke kalibratie (zie bijvoorbeeld eerdere octrooiaanvragen WO2019/215219 A1 en US2020/0286424 die hierboven zijn vermeld, van dezelfde Aanvrager).
15 BE2022/5881
Volgens een tweede aspect van de uitvinding, wordt een werkwijze verschaft voor het implementeren van niet-lineaire display pixeldriver compensatie, uitgevoerd door een verwerkingssysteem van (of voor) een licht-emitterend display dat wordt gekenmerkt door één of meer kleuren, waarbij genoemd licht-emitterend display pixels omvat die worden gecontrolleerd door pixeldrivers. De 'implementatie'methode omvat de volgende stappen: (i) het bepalen van de niet-lineaire display pixeldriver compensatie op basis van de werkwijze van het eerste aspect, of het lezen, laden of invoeren van de niet-lineaire display pixeldriver compensatie, bepaald op basis van de werkwijze van het eerste aspect, en (ii) het compenseren (of corrigeren) van de afwijking bepaald als de niet-lineaire display pixeldriver compensatie.
Volgens een uitvoeringsvorm is genoemde compensatie gebaseerd op de helderheid (Y-waarde van kleurruimtecoördinaten) gedefinieerd door een wiskundige formule.
Volgens een uitvoeringsvorm is genoemde compensatie gebaseerd op het gebruik van één of meer opzoektabellen (waarvan gegevens worden opgeslagen in (niet-vluchtig) geheugen), in het bijzonder op wat wordt opgeslagen in (of weergegeven door) de één of meer opzoektabellen, elk bestaande uit invoerwaarden en corresponderende uitvoerwaarden, rekening houdend met de niet-lineariteiten. Bovendien kan genoemde compensatie worden gebaseerd op wat is opgeslagen in meerdere (d.w.z. ten minste twee) opzoektabellen met verminderde bitrepresentatie (om de benodigde hoeveelheid geheugen te verminderen), in het bijzonder wordt genoemde compensatie gedefinieerd op basis van uitgevoerde interpolatieberekeningen onder deze.
Volgens een uitvoeringsvorm wordt de compensatie uitgevoerd voor elke displaypixel of cluster van displaypixels.
Volgens een derde aspect van de uitvinding, wordt een werkwijze verschaft voor het weergeven van een beeld op een lichtg-emitterend display met niet-lineaire display pixeldriver compensatie. De 'weergave'methode omvat de volgende stappen: (i) het bepalen van de niet- lineaire display pixeldriver compensatie op basis van de werkwijze van het eerste aspect, of het lezen, laden of invoeren van de niet-lineaire display pixeldriver compensatie, bepaald op basis van de werkwijze van eerste aspect; (ii) het implementeren van de niet-lineaire display pixeldriver compensatie op basis van de werkwijze van het tweede aspect; en (iii) het weergeven van het beeld.
16 BE2022/5881
Volgens een uitvoeringsvorm wordt een extra temperatuurcorrectie toegepast om de weergave van het beeld verder te verbeteren.
Volgens een vierde aspect van de uitvinding, wordt een systeem verschaft voor een licht- emitterend display, in het bijzonder voor het aansturen van licht-emitterende elementen of pixels daarvan. Het systeem maakt mogelijk deel uit van het licht-emitterend display, kan worden ingebouwd of daaraan worden bevestigd. Het systeem omvat een invoerprotocol voor het ontvangen van (weer te geven) (video)invoer en een PWM-genererende module voor het omzetten van genoemde invoer in signalen die worden geleverd aan pixeldrivers (bijvoorbeeld één of meer), waarbij de licht-emitterende elementen of pixels worden gedefinieerd en gecontrolleerd in de door hen uit te zenden (en in de vorm van video weergegeven) (lichtjuitvoer. Het systeem omvat ook een (aanvullende) module voor het bepalen en implementeren van niet-lineaire display pixeldriver compensatie (vanwege niet-lineariteiten veroorzaakt door de pixeldrivers) volgens de werkwijze van respectievelijk eerste en tweede aspect.
Volgens een uitvoeringsvorm omvat het systeem voorts een module voor het uitvoeren van kalibratie (bijvoorbeeld zoals naar verwezen in een uitvoeringsvorm van de werkwijze van eerste aspect) en hiermee het bepalen van kalibratiematrices die moeten worden gebruikt bij het (uiteindelijk) definiëren van de uitvoer die moet worden uitgezonden door de licht-emitterende elementen of pixels (van het display).
Volgens een uitvoeringsvorm is genoemde compensatie van de werkwijze van het tweede aspect, voor het implementeren van niet-lineaire display pixeldriver compensatie, in het bijzonder gebaseerd op het gebruik van één of meer opzoektabellen en de gegevens voor deze één of meer opzoektabellen die worden opgeslagen in en dus worden opgehaald uit een niet- vluchtig geheugen van het verwerkingssysteem. Bovendien omvatten de één of meer opzoektabellen hierbij elk invoerwaarden en corresponderende uitvoerwaarden die rekening houden met de niet-lineariteiten die moeten worden opgenomen in de signalen voor de pixeldrivers.
Overzicht van de tekeningen
17 BE2022/5881
Figuur 1 illustreert een uitvoeringsvorm van de traditionele kalibratievideopijplijn in overeenstemming met de techniek, die een flow weergeeft voor de bepaling van de kleuruitvoer Rout, Gout, Bout voor de primaire kleuren RGB op basis van de kalibratiematrix (A), indien bepaald, en op de kleurinvoer Rin, Gin, Bin voor de primaire kleuren RGB zoals ontvangen.
Figuur 2 illustreert een videopijplijnuitvoeringsvorm in overeenstemming met de techniek, die een schema weergeeft dat kan worden gevolgd voor de berekening van kleuruitvoer Rout, Gout,
Bout op basis van de kalibratiematrix (A) en de kleurinvoer Rin, Gin, Bin zoals ontvangen.
Figuur 3 illustreert een weergave van de kleur Blauw, waarbij kleurcoördinaten worden vergeleken, die ofwel dezelfde helderheid (en dezelfde kleur) hebben en op dezelfde manier worden waargenomen (BO en B3), of anders een verschillende helderheid hebben (hoewel dezelfde kleur) en anders worden waargenomen (B1 en B2).
Figuur 4 illustreert een videopijplijnuitvoeringsvorm in overeenstemming met de techniek, die een flow weergeeft voor de bepaling van de kleuruitvoer Rout, Gout, Bout voor de primaire kleuren RGB op basis van de kalibratie gedefinieerd door 2 matrices Matrix1, Matrix2 en op de kleurinvoer Rin, Gin, Bin voor de primaire kleuren RGB zoals ontvangen.
Figuur 5 illustreert voorbeelden van mogelijke Factoren die als gewicht kunnen worden gebruikt in combinatie met RGB-kleuren om de (uiteindelijke) kalibratie te bepalen.
Figuur 6 illustreert grafische weergave van de niet-lineaire rode kanaaluitvoer gemeten op een display, inclusief vergelijking met de lineaire theoretische verwachting, in overeenstemming met de uitvinding.
Figuur 7 illustreert een videopijplijnuitvoeringsvorm in overeenstemming met de uitvinding, die een flow weergeeft voor de bepaling van de kleuruitvoer Rout, Gout, Bout voor de primaire kleuren RGB, waarbij nabij het einde of de uitvoer compensatieblokken Comp R, Comp G, Comp
B zijn voorzien.
Figuur 8 illustreert een voorbeelduitvoeringsvorm die een blokschema of stroomdiagram weergeeft voor de implementatie van de niet-lineaire (sub-delta) compensatie, in het bijzonder hier voor de rode lichtuitvoer, in overeenstemming met de uitvinding.
Figuur 9 illustreert een voorbeeld van een LED met intelligente sturing, hier door middel van de
LC8823-5050 RGB SMD LED Datasheet.
Figuur 10 illustreert het elektronische diagram van TLC59731 van Texas Instruments, zijnde een 3-kanaals, 8-bit, PWM LED-driver met Single-Wire Interface.
18 BE2022/5881
Figuur 11 illustreert het blokschema van MBI5759 van Macroblock, zijnde een geavanceerde
LED-driver gebouwd door 48 constante current source uitvoerkanalen en 32 schakelaars gepakt in een compact BGA-pakket.
Figuur 12 illustreert een uitvoeringsvorm en dus een algemeen hoofdschema van een oververeenvoudigd blokschema dat toepasbaar is voor alle bestaande (geïntegreerde of niet)
LED-drivers, in overeenstemming met de techniek.
Figuur 13 illustreert een uitvoeringsvorm van een blokschema voor een pixeldriver, in overeenstemming met de uitvinding.
Figuur 14 toont een voorbeelduitvoeringsvorm van een curve die een RC-effect vertoont.
Figuur 15 illustreert een schematische uitvoeringsvorm van een werkwijze voor het bepalen van niet-lineaire display pixeldriver compensatie uitgevoerd door een verwerkingssysteem van een licht-emitterend display, in overeenstemming met de uitvinding.
Figuur 16 illustreert een andere schematische uitvoeringsvorm van de werkwijze voor het bepalen van niet-lineaire display pixeldriver compensatie uitgevoerd door een verwerkingssysteem van een licht-emitterend display, inclusief initiële kalibratie, in overeenstemming met de uitvinding.
Figuur 17 illustreert een schematische uitvoeringsvorm van een werkwijze voor het implementeren van niet-lineaire display pixeldriver compensatie uitgevoerd door een verwerkingssysteem van een licht-emitterend display, in overeenstemming met de uitvinding.
Figuur 18 illustreert een schematische uitvoeringsvorm van een werkwijze voor het weergeven van een beeld op een licht-emitterend display met niet-lineaire display pixeldriver compensatie, in overeenstemming met de uitvinding.
Figuur 19 illustreert een uitvoeringsvorm van het verwerkingssysteem van een licht-emitterend display, dat is voorzien van niet-lineaire display pixeldriver compensatie, in overeenstemming met de uitvinding.
Figuur 20 illustreert een andere videopijplijnuitvoeringsvorm, in overeenstemming met de uitvinding.
Beschrijving van de uitvinding
Voor een gedetailleerde beschrijving van de onderhavige uitvinding, die hieronder verder gaat, kan worden verwezen naar eerdere aanvraag van dezelfde Aanvrager, waaronder bijvoorbeeld
19 BE2022/5881 wO2019/215219 A1, getiteld "STANDALONE LIGHT-EMITTING ELEMENT DISPLAY TILE AND
METHOD" en gepubliceerd op 14 november 2019 , en US2020/0286424, getiteld "REAL-TIME
VERVORMBARE EN TRANSPARANTE DISPLAY" en gepubliceerd op 10 september 2020. Wanneer dit relevant lijkt voor één van de aspecten van de onderhavige uitvinding, zal deze verwijzing in het bijzonder en expliciet hieronder worden gemaakt.
Probleem
Bij toepassing van het kalibratieprincipe zoals eerder beschreven (in gedetailleerde achtergrondbeschrijving), laat meting van het eindresultaat van b.v. Rtarg, Gtarg, Btarg en/of
Wtarg (maar ook andere berekende uitvoerwaarden) zien dat er een afwijking is van wat wordt gemeten en wat echt gewenst is. Dit betekent dat b.v. Rtarg-gemeten # Rtarg-berekend. Dit komt door niet-lineariteiten van het systeem in het display na de PWM-generatie via de constant current driver naar de LED's.
Ervan uitgaande dat de PWM perfect is berekend, betekent dit dat er niet-lineariteiten zijn geïntroduceerd. Figuur 6 illustreert dergelijke niet-lineariteiten, in het bijzonder toont Figuur 6 (a) een grafiek van b.v. een niet-lineariteit gemeten op Rode kleur in een display. Op de horizontale x-as in deze grafiek hebben we het bit-nummer (hier 16-bit) voor Rood weergegeven, dat wordt gebruikt als invoer voor de constant current driver (of pixeldriver in het algemeen). Dit bit-nummer is ook bekend als PWM-nummer. Op de verticale y-as van de grafiek wordt de Rode helderheid lichtuitvoer weergegeven in nit (= candela per m2). De stippen tonen de werkelijke meting (inclusief niet-lineariteiten), terwijl de ononderbroken lijn het lineaire (theoretische en verwachte) geval is. Figuur 6 (b) toont de afwijking van de ‘Rode lichtuitvoer’ ten opzichte van het lineaire geval.
Voorgestelde oplossing
Volgens het bovenstaande moet een extra rekenstap voor deze niet-lineariteiten worden geïmplementeerd.
Een mogelijke oplossing kan zijn om 3 factoren te definiëren en meerdere matrices toe te voegen om toe te passen en hierop te reageren. Een nadeel van deze oplossing is dat dit de digitale implementatiecomplexiteit (latentie en snelheid) voor volledige herberekening
20 BE2022/5881 vergroot. De factoren bepalen dan de hoeveelheid of het gewicht te nemen van b.v. meerdere matrices gedefinieerd in de XYZ (lineaire) ruimte.
Het aantal matrices en/of matrixelementen kan willekeurig worden gekozen, afhankelijk van de vereiste nauwkeurigheid en de factoren die vervolgens nodig zijn om te bepalen uit welke matrices moet worden geïnterpoleerd. Al deze berekeningen moeten worden gedaan bovenop de eerder beschreven verbetering van de visuele waarneming, mocht men deze nodig hebben.
Een ander nadeel is de hoeveelheid geheugen en ophaalbewerkingen die nodig zijn om één pixel te laten berekenen. Dit heeft dus ook een nadeel voor de systeemperformantie in het geval dat er veel pixels moeten worden verwerkt.
Een vereenvoudiging zou kunnen zijn om aan te nemen dat de kleur (x,y) coördinaten niet (te veel) veranderen vanwege deze niet-lineariteiten. In dat geval hoeven we alleen iets te doen aan de Y-waarde van de reële primaire kleur. De volledige pijplijn ziet er dan uit zoals in Figuur 7, die gedeeltelijk de flow weergeeft van eerder besproken Figuur 4, voor de bepaling van de kleuruitvoer Rout, Gout, Bout voor de primaire kleuren RGB op basis van de kalibratie gedefinieerd door 2 matrices Matrix1, Matrix2 en op de kleurinvoer Rin, Gin, Bin voor de primaire kleuren RGB zoals ontvangen. Voor de eenvoud in het diagram zijn hier in Figuur 7 de
DDR (geheugen) toegangslijnen weggelaten. Nabij de uitgang van het schema is een extra stap of berekening voorzien door middel van compensatieblokken Comp R, Comp G, Comp B.
Op dit punt hebben we 3 compensatieblokken Comp R, Comp G, Comp B toegevoegd die respectievelijk op alle individuele primaire RGB-kleuren werken. Er zijn meerdere manieren om de compensatieblokken te implementeren.
A. Wiskundige formule aanpak o Y = ax” +bx"7} + cx" 24+ waarbij n moet worden ingesteld op een geheel getal om het dichtst bij de uiteindelijke curve te passen.
B. Opzoektabel aanpak o We definiëren een opzoektabel met invoerwaarden en uitvoerwaarden.
In werkelijkheid (digitale wereld}, als we aannemen dat de PWM- waarden in 16 bit worden berekend, betekent dit dat we een 65536 lange RAM-opzoektabel met 16-bits uitvoer moeten maken. Bijv. op
21 BE2022/5881 locatie 32768 is de uitvoerwaarde 30000 (in plaats van 32768 wat het lineaire geval is).
C. Sub-delta implementatie o Deze implementatie is getekend als blokschema in Figuur 8, een voorbeelduitvoeringsvorm van een stroomdiagram voor de implementatie van de subdelta-compensatie, in het bijzonder hier voor de Rode lichtuitvoer.
Zowel de A- als de B-aanpak vereisen aanzienlijke hardwarebronnen, zijnde ofwel een rekenpijplijn of een aanzienlijk groot geheugen. De volgende implementatie C, ook wel sub-delta genoemd, is een aanpak die beperkt is in rekenbronnen en RAM-bronnen en kan worden uitgevoerd met slechts een paar klokken latentie.
Zoals vermeld, wordt het voorbeelddiagram van Figuur 8 getoond voor het Rode kanaal, maar is van toepassing op alle kleuren. De flow en daarmee de volgorde van berekeningen die in dit diagram worden geïllustreerd, wordt nu verder besproken.
Veronderstel een digitale bitstroom van R (Rood kanaal) waarden van 16 bit: Rin (15 tot 0), met 16 parallelle bitbanen, en n=15. Dit R-kanaal splitsen we op in 2 delen: een top-bit kanaal Rt van n tot a, waarbij a=4 hier bij wijze van voorbeeld. We krijgen dus een top-bit kanaal Rt van 12 bits, d.w.z. Rt (15 tot 4), en een bottom-bit kanaal van 4 bits, d.w.z. Rb (3 tot 0). Dus in dit voorbeeld heeft het bovenste deel Rt een breedte van 12 bits (waarden tussen O en 4095, of in totaal 4096 = 22 waarden) en het onderste deel Rb heeft een breedte van 4 bits (waarden tussen 0 en 15, of in totaal 16 = 2% waarden). Terwijl Rt wordt gedefinieerd van "n tot a" bits, en Rb omvattende "a" bits (0 is inbegrepen), kan Rin worden gedefinieerd als Rt x 2° + Rb.
Zoals weergegeven in het diagram van Figuur 8, komt het top-bit kanaal Rt in 2 opzoektabellen (lut): Toplut van 4096 woorden en Bottomlut van 4096 woorden. Elk woord is b.v. 12 bits signed.
We hebben nu dus 2 opzoektabellen van elk 4096 x 12 bits groot, wat aanzienlijk minder is dan de 65536 x 16 waarden die in oplossing B hierboven worden voorgesteld. Gebruik maken van twee of meer opzoektabellen met een verminderde bit-representatie (in plaats van wanneer er slechts één wordt gebruikt) leidt dus tot minder benodigde ruimte en het vermijden van zware verwerking (met grote getallen). Een andere manier om (geheugen)ruimte en verwerkingstijd te
22 BE2022/5881 besparen, is om (in de berekeningen) vooral te werken met de afwijking van het niet-lineaire versus het lineaire geval (of het verschil daartussen), in plaats van de absolute getallen te gebruiken van lineaire uitvoer en niet-lineariteiten die dit verschil maken.
Opgemerkt wordt dat deze 2 opzoektabellen (Toplut en Bottomlut) kunnen worden gebruikt om een interpolatie te maken tussen de waarden in hun respectieve en overeenkomstige locaties bepaald door de Rt-waarde. Daarnaast kan de Rb-waarde worden gebruikt om een dergelijke interpolatie te bepalen, doordat de Rb-waarde kan worden gebruikt om te interpoleren tussen een waarde uit de Toplut (d.w.z. op een bepaalde locatie daarvan) en een waarde uit de
Bottomlut (op overeenkomstige locatie daarvan) .
Neem aan dat voor het Rode kanaal b.v. Rb = 10 en Rt = 1500 bij wijze van voorbeeld. We nemen aan dat R Toplut op het adres 1500 (Rt) waarde 2900 heeft en R Bottomlut op corresponderende locatie 1500 (Rt) waarde 2800 heeft. Beide waarden verschijnen aan de uitgang van de opzoektabellen wanneer ze worden geadresseerd met Rt = 1500, zijnde respectievelijk 2900 en 2800. Zoals weergegeven in het diagram van Figuur 8, wordt de R Toplut-waarde (hier bijv. 2900) vervolgens vermenigvuldigd met de Rb-waarde (met 2° = 2* mogelijkheden in totaal) en wordt de R Bottomlut-waarde (hier bijv. 2800) vermenigvuldigd met (2% — Rb) = 2% — 10 =16— 10 = 6.
Op dit punt eindigen we met: (2900 x 10 + 2800 x 6) wat vervolgens wordt gedeeld door (2% = 16) voor normalisatiedoeleinden als onderdeel van de interpolatie. De formule wordt: (2900 x 10 + 2800 x 6) / 16, wat we een deltawaarde noemen, op te tellen bij de oorspronkelijke kleurwaarde om de niet-lineariteiten te compenseren.
Uiteindelijk voegen we voor de uitvoer Rout deze deltawaarde toe aan de oorspronkelijke invoerwaarde Rin, die Rt x 2% + Rb is. Bijgevolg wordt de uitvoerwaarde Rout:
Rout = Rin + Toplut(Rt) * Rb + Room * (2% — Rp)
Rin = Rt * 2% + Rb
Als resultaat, Rout = (1500 * 16 + 10) + (2900 * 10 + 2800 * 6)/16 = 24010 + 2862 = 26872.
23 BE2022/5881
De 2862 is de delta en is bovendien de 2e compensatie op de kleur, en wordt daarom verder sub-delta genoemd.
In het geval dat alle individuele LED-primaire kleuren hetzelfde gedrag vertonen, hoeven er slechts 3 sets opzoektabellen te worden gemaakt waarin elke individuele LED-berekening door dezelfde tabel gaat. Opgemerkt wordt dat - in het geval waarin de compensatie verschillend moet zijn - sets van opzoektabellen voor berekeningen kunnen worden gemaakt en geselecteerd volgens de LED die een bepaalde compensatie nodig heeft.
FPGA implementatie
Alle bovenstaande videopijplijnen kunnen worden geïmplementeerd in een FPGA (Field
Programmable Gate Array) of standaard ASIC. Wanneer echter het aantal pixels berekend moet worden met kalibratie en/of de subdelta correctie, vereist dit veel geheugentoegang per pixel, vooral voor het kalibratiegedeelte. In het geval van bijv. gebruik van de visuele waarnemingskalibratie betekent dit dat voor elke te berekenen RGB-pixel ten minste 18 waarden (2 matrices van 9 waarden) moeten worden opgehaald van een vooraf berekende locatie in het geheugen. Hoewel dit kan worden geïmplementeerd, heeft het een nadeel wat betreft rekensnelheden en/of beperking van het aantal pixels. Om de FPGA- of ASIC-complexiteit te verminderen, kan een deel van de berekening en niet-lineariteitscompensatie meer lokaal worden gedaan op het LED-niveau of rond clusters van meerdere LED's, zoals beschreven in de volgende paragraaf.
Chip implementatie
Single-pixel LED's met PWM-generatie bestaan al heel lang. Voorbeelden hiervan zijn b.v.
LC8823 LED's. Dit worden LED's met intelligente (be)sturing genoemd. In plaats van alleen anode en kathode voor de LED's te hebben, hebben ze digitale inputs en outputs zoals te zien is in
Figuur 9, illustrerend bij wijze van voorbeeld LC8823-5050 RGB SMD LED Datasheet. Tot nu toe worden deze inputs alleen gebruikt om de digitale PWM-waarde in te voeren, die vervolgens intern wordt gebruikt om een bepaalde PWM te genereren die de interne constante current sources aanstuurt om de LED's op te lichten.
24 BE2022/5881
Het is echter onderdeel van de uitvinding om de kalibratie en/of subdeltacorrectie ook als lokale oplossing toe te passen door middel van chipimplementatie (bijvoorbeeld LED-chip of driverchip). Dit kan ofwel A zijn, de wiskundige aanpak waarbij alle factoren worden bepaald door een protocol om de waarden in te vullen, of B, een totale opzoektabel voor elke kleur, waarbij de opzoektabel ook wordt geladen door het invoerprotocol. Oplossing C kan ook op exact dezelfde manier worden geïmplementeerd als eerder beschreven, bijvoorbeeld inwerkend op de individuele LED.
Over het algemeen wordt de uitvinding van het toevoegen van een opzoektabel voor (helderheids- en/of kleur)compensatie in dit soort LED's als inventief en nieuw beschouwd om alle bovengenoemde problemen op te lossen, zoals bijvoorbeeld sequentiële verwerking die meer tijdrovend is (en mogelijk meer middelen vereist) dan nu gedistribueerde en/of parallelle verwerking (bijvoorbeeld lokaal) in overeenstemming met de uitvinding. Verderop, door de complexiteit dichter bij de LED's te voegen, wordt de complexiteit (en omvang) van de controle voor een LED-display verminderd.
Nu hoeft de LED niet per se in hetzelfde pakket te zitten. Constant current drivers (common cathode of common anode) zijn direct beschikbaar, zoals b.v. TLC59731, een 3-kanaals 8-bit
PWM-driver met een single wire interface, waarbij de out0, out1 en out2 en 3 pinnen moeten worden aangesloten op de LED's zoals afgebeeld in Figuur 10, illustrerend bij wijze van voorbeeld
TLC59731 elektronisch diagram van de Texas Instrumenten (TI) 3-kanaals, 8-bit, PWM LED-driver met Single-Wire Interface.
En er zijn complexere constant current drivers die meerdere arrays van LED's kunnen adresseren. Voorbeeld hier is b.v. MBI5759 van Macroblock, d.w.z. een geavanceerde LED-driver gebouwd met 48 constante current source uitvoerkanalen en 32 schakelaars gepakt in een compact BGA-pakket. Het blokschema van deze (gepatenteerde) 48-kanaals PWM constante current LED source driver met ingebedde schakelaar voor 1:32 tijdmultiplextoepassingen wordt getoond in Figuur 11. Zoals men kan zien, is er geheugen (SRAM) in deze drivers (om de LED
PWM-waarden te behouden), maar er is nooit een geheugen voorzien om individuele LED- kalibratiegegevens of niet-lineariteitscorrecties in dit soort chips te bewaren.
25 BE2022/5881
Oververeenvoudigd, lijken de blokschema's op alle bestaande (al dan niet geïntegreerde) LED- drivers, zoals geïllustreerd in Figuur 12, die het algemene principeschema laat zien. Het invoerprotocol wordt naar de PWM-generator geleid, die de LED aanstuurt.
Afgezien van de eerder beschreven algemene methoden, maakt het deel uit van de uitvinding om functionaliteitsblokken toe te voegen aan de 'constant current driver'-chipsets met of zonder geïntegreerde LED's, zoals geïllustreerd in Figuur 13, waarbij opnieuw het algemene principeschema van Figuur 12 wordt getoond, maar nu met ook extra blokken (met gestippeld canvas) voorzien. Een schematische uitvoeringsvorm wordt getoond van het systeem 80 voor een licht-emitterend display 10, in het bijzonder voor het aansturen van licht-emitterende elementen of pixels 40 daarvan, met niet-lineaire display pixeldriver compensatie. Het systeem 80 omvat een invoerprotocol 81 voor het ontvangen van (weer te geven) (video)invoer en een
PWM-genererende module 84 voor het omzetten van genoemde invoer in signalen die moeten worden geleverd aan pixeldrivers 45, waarbij de licht-emitterende elementen of pixels 40 worden gedefinieerd en gecontrolleerd in de door hen uit te zenden (en weergegeven in de vorm van video) (licht)uitvoer. Het systeem 80 omvat ook een aanvullende module 83 voor het bepalen en/of implementeren van niet-lineaire display pixeldriver compensatie (vanwege niet- lineariteiten veroorzaakt door de pixeldrivers). Het systeem 80 kan verder een module 82 omvatten voor het (vooraf) uitvoeren van kalibratie en het bepalen van kalibratiematrices die moeten worden gebruikt bij het definiëren van de uiteindelijke uitvoer die moet worden uitgezonden door de licht-emitterende elementen of pixels 40.
Verder verwijzend naar Figuur 13, aan de ingang van het systeem 80, wordt video-input ontvangen 131 en ingevoerd via het invoerprotocol 81, van waaruit b.v. RGB-data (16-bits) wordt geleverd 132. Deze RGB-data kan vervolgens worden gekalibreerd via de module 82, waaruit nu gekalibreerde RGB-data wordt uitgevoerd 133. De gekalibreerde RGB-data kan vervolgens worden gebruikt als invoer voor de niet-lineaire compensatie 83, waaruit gecompenseerde (en eerder) gekalibreerde data komt 134. De gecompenseerde gekalibreerde data kan nu naar de PWM-generator 84 worden geleid, voor het genereren en leveren 135 van geschikte PWM-signalen via de pixeldrivers 45 naar de LED's of pixels 40 en deze hiermee (in) aan of uit (staat) te sturen.
26 BE2022/5881
Voor de aanvullende blokken 82, 83 kan het zijn (zoals hier getoond) dat meerdere lagen (of versies of fasen) respectievelijk voor de kalibratie 82 en voor de niet-lineaire compensatie 83 (ook wel subdelta genoemd) zijn voorzien. Mogelijk moeten dergelijke meerdere lagen worden aangebracht vanwege meerdere kleuren en/of meerdere soorten LED's voor de kalibratie en/of de niet-lineaire compensatie die moet worden uitgevoerd. Opgemerkt wordt dat voor elke soort of reeks kleuren meerdere instanties kunnen worden toegevoegd, afhankelijk van de complexiteit die moet worden opgelost. In het algemeen kan men stellen dat elke individuele
RGB-pixel ten minste één set kalibratiegegevens (9 waarden) nodig heeft. In het geval van verbetering van de visuele waarneming is een set van 18 waarden nodig en in het geval van extra temperatuurcompensatie is een set van 3 extra waarden voor elke kleur nodig. Als alle afzonderlijke kleuren R, G, B (of andere) hetzelfde niet-lineariteitsgedrag hebben, moeten er minimaal 3 niet-lineariteitscompensatieblokken worden toegevoegd.
Reden voor niet-lineariteiten
Er kunnen meerdere redenen zijn voor niet-lineariteiten. Enkele redenen (maar niet beperkt tot alle redenen) zijn: 1. Indelingscapaciteit van een LED-bord; 2. Temperatuurgedrag van de constant current drivers; 3. Snelheid van het aan/uit schakelen van de constant current drivers; en 4. DI/DV (spannings- en belastingsafhankelijkheid van de constant current drivers).
Figuur 14 toont een voorbeelduitvoeringsvorm van een curve 140 die een RC-effect vertoont.
Het oppervlak onder de curvepieken is de energie voor het oplichten van de LED's en afhankelijk van de PWM-breedte varieert deze energie.
Het is uit de industrie bekend dat perfecte constant current drivers niet bestaan. De meeste hiervan zijn afhankelijk van de benodigde stroom en ook van de voedingsspanning en zijn te vinden in de datasheets.
Voorbeelduittreksel van constant current driver (MBI5759 van Macroblock) datasheet: e Constante output current range: o -0.5-15mMA @ Voo = Vives = 3.8V, Vieor = 2.8V voedingsspanning e Excellente output current nauwkeurigheid:
27 BE2022/5881 o Tussen kanalen: <+ 2 .5% (Max) o Tussen ICs: < + 3.0% (Max)
Figuur 15 illustreert een schematische uitvoeringsvorm van de werkwijze 300 voor het bepalen van niet-lineaire display pixeldriver compensatie 30 uitgevoerd door een verwerkingssysteem 20 van een lichtg-emitterend display 10 gekenmerkt door één of meer kleuren 15, bijvoorbeeld drie primaire kleuren rood, groen en blauw (RGB). Het licht-emitterend display 10 omvat pixels 40 die worden gecontrolleerd door pixeldrivers 45. De werkwijze 300 omvat verschillende stappen, hier weergegeven als vier in totaal. In een eerste stap (i) worden waarden 31 gemeten 301 voor één of meer kleuren 15 en/of voor één of meer pixels 40 van het display 10. Dergelijke waarden 31 kunnen ook worden aangeduid als kleurwaarden, en zijn b.v. gemeten op het display en in real-time genomen. De kleurmeting voor het bereiken van gemeten waarden 31 kan b.v. met een spectrometer. De waarden 31 kunnen worden weergegeven in kleurruimte of lineaire ruimte, gedefinieerd door respectievelijk 3 coördinaten (x, y, Y) of (X, Y, Z). In een tweede stap (ii) worden de theoretische kleurwaarden 32 berekend 302 voor de één of meer kleuren 15 en/of voor de één of meer pixels 40 van het display 10, terwijl een dergelijke berekening gebaseerd is op een lineair verband. In een derde stap (iii) worden de gemeten en corresponderende berekende waarden 31, 32 vergeleken 303. In een vierde stap (iv) wordt een afwijking in de gemeten waarden 31 (ten opzichte van de berekende waarden 32) waargenomen 304, b.v. per kleur en voor ten minste één kleur, als gevolg van niet-lineariteiten, in het bijzonder veroorzaakt door de pixeldrivers 45, en de afwijking wordt bepaald 305 als de niet-lineaire pixeldriver compensatie 30.
Zoals afgebeeld in Figuur 16, kan de werkwijze 300 aanvankelijk een kalibratiedeel 500 omvatten. De initiële kalibratie 500, uitgevoerd voorafgaand aan de vier stappen (i) tot (iv) zoals hierboven beschreven, omvat drie stappen (a) tot (c). Een eerste stap (a) omvat het lezen, laden of invoeren 501 van de zogenaamde oorspronkelijke kleurwaarden 51 (in 3-coördinaten weergave) gemeten, b.v. met een spectrometer, voor de één of meer kleuren 15 van (elk van de pixels 40 van) het display 10. Een tweede stap (b) omvat het lezen, laden of invoeren 502 de targetwaarden 52 (zoals waargenomen door een menselijk oog en/of een camera die de display uitvoer opneemt) voor de één of meer kleuren 15 van (elk van de pixels 40 van) display 10. Een derde stap (c) omvat het berekenen 503 (via matrixbewerkingen), voor de één of meer kleuren 15, bijbehorende kalibratiematrices 50 op basis van de gemeten en targetwaarden 51, 52, met name op basis van het verschil daartussen. Terugverwijzend naar de werkwijze 300, worden nu
28 BE2022/5881 bij het berekenen 302 van de theoretische kleurwaarden 32 in stap (ii), de kalibratiematrices 50 zoals berekend door middel van de werkwijze 500 gebruikt zoals aangegeven door de gestreepte lijnpijl.
Figuur 17 illustreert een schematische uitvoeringsvorm van de werkwijze 600 voor het implementeren van niet-lineaire display pixeldriver compensatie 30 uitgevoerd door een verwerkingssysteem 20 van een licht-emitterend display 10 gekenmerkt door één of meer kleuren 15, bijvoorbeeld drie primaire kleuren rood, groen en blauw (RGB). Het licht-emitterend display 10 omvat pixels 40 die worden gecontrolleerd door pixeldrivers 45. De werkwijze 600 omvat verschillende stappen. In een eerste stap (i) wordt de niet-lineaire display pixeldriver compensatie 30 op basis van de werkwijze 300 bepaald 601, of wordt de niet-lineaire display pixeldriver compensatie 30, bepaald op basis van de werkwijze 300, gelezen, geladen of ingevoerd 602. Een tweede stap (ii) omvat het compenseren 603 voor de afwijking bepaald als de niet-lineaire pixeldriver compensatie 30.
Het compenseren 603 kan gebaseerd zijn op de helderheid (Y-waarde van kleurruimtecoördinaten) gedefinieerd door een wiskundige formule, zoals aangegeven door de module 63.
Het compenseren 603 kan gebaseerd zijn op het gebruik van één of meer opzoektabellen (waarvan data opgeslagen zijn in (niet-vluchtig) geheugen) zoals aangegeven door de module 64, in het bijzonder op wat er is opgeslagen in de één of meer opzoektabellen, elk bestaande uit invoerwaarden en bijbehorende uitvoerwaarden, rekening houdend met de niet-lineariteiten.
Bovendien kan het compenseren 603 gebaseerd zijn op wat is opgeslagen in meerdere opzoektabellen met een verminderde bit-representatie (om de benodigde hoeveelheid geheugen te verminderen), in het bijzonder kan het compenseren 603 worden gedefinieerd op basis van interpolatieberekeningen, aangegeven door de module 65, uitgevoerd onder deze.
Figuur 18 illustreert een schematische uitvoeringsvorm van de werkwijze voor het weergeven van een beeld 70 op een licht-emitterend display 10 met niet-lineaire display pixeldriver compensatie. De werkwijze kan aanvankelijk bestaan uit een kalibratiedeel 500, hoewel dit niet strikt noodzakelijk is, zoals aangegeven door het gestippelde canvas van dit blok 500. De werkwijze omvat het bepalen van de niet-lineaire display pixeldriver compensatie op basis van werkwijze 300, of het uitlezen, laden of invoeren van de niet-lineaire display pixeldriver compensatie, bepaald op basis van werkwijze 300 (vandaar aangegeven door blok 300), en
29 BE2022/5881 vervolgens het implementeren van de niet-lineaire display pixeldriver compensatie op basis van werkwijze 600 (vandaar aangegeven door blok 600). Vervolgens omvat de werkwijze het weergeven 700 van het beeld 70 op het beeldscherm 10 (zoals aangegeven door blok 700).
Volgens een uitvoeringsvorm kan de werkwijze een extra temperatuurcorrectie (niet getoond) omvatten.
Figuur 19 illustreert een uitvoeringsvorm van het verwerkingssysteem van een licht-emitterend display, dat is voorzien van niet-lineaire display pixeldriver compensatie, in overeenstemming met de uitvinding. In Figuur 19 (a) en (b) is een uitvoeringsvorm getoond van een zogenaamde receiver card 190 (of verwerkingssysteem) die in of op een displaytegel kan worden aangebracht. In Figuur 19 (a) wordt in het bijzonder één zijde (of voorzijde) van de receiver card 190 getoond, terwijl Figuur 19 (b) de andere zijde (of achterzijde) van deze card 190 illustreert.
Terugverwijzend naar Figuur 19 (a), hier zijn de video-invoer 191 en video-uitvoer 192-poorten afgebeeld, voor het invoeren en uitvoeren van de videostroom, of met andere woorden, voor respectievelijk het ontvangen van de video-invoer 191 en het verzenden van de video-uitvoer 192. Verder wordt een FPGA 193 (met processor) en een niet-vluchtig geheugen 194 aan deze kant van de card 190 getoond. Het niet-vluchtige geheugen 194 bevat of slaat bijvoorbeeld gegevens op die nodig zijn om de opzoektabel(len) op te maken of in te vullen. Deze gegevens kunnen b.v. ingevoerd worden nadat metingen en berekeningen van de niet-lineariteiten zijn uitgevoerd. De andere kant van de receiver card 190 in Figuur 19 (b) illustreert een interfaceverbinding 195 weergegeven door twee staafvormige connectoren, evenals vluchtig geheugen 196, dat bijvoorbeeld kan worden gebruikt om kalibratiematrices op te slaan. De interfaceverbinding 195 is te koppelen aan of te verbinden met een aansluiting 199 op een LED- bord 197, waarvan een voorbeelduitvoeringsvorm schematisch is weergegeven in Figuur 19(c).
Het LED-bord 197 omvat een aantal constant current drivers 198, die allemaal zijn verbonden met de aansluiting 199. Zoals we nog weten, kan een constant current driver 199 worden gebruikt om een pixel of LED, of een aantal daarvan, te controlleren. Het is gebruikelijk dat één constant current driver 199 een cluster van pixels of LED's controlleert, b.v. een veelvoud van 16, bijvoorbeeld 64 of 256.
Figuur 20 illustreert een andere videopijplijnuitvoeringsvorm, in overeenstemming met de uitvinding. Het video 200 signaal komt binnen als ontvangen door het display systeem (en zijn verwerking), en een positie of venster 201 wordt gedefinieerd en opgeslagen. Vervolgens
30 BE2022/5881 doorloopt elke kleur van een pixel een gamma (of y) correctie 202, gevolgd door kalibratie 203.
Verder wordt de sub-delta (of subA) compensatie 204 uitgevoerd, waarvoor bijvoorbeeld een opzoektabel wordt gemaakt (door middel van invoer ontvangen van de processor) en vervolgens wordt de subdelta bepaald. Dan, zoals aangegeven door blok 205, wordt RGB verwerkt en worden signalen naar de constant current drivers 206 gestuurd (afhankelijk bijv. van type constant current driver (ccd), aantal pixels of LEDs, type board enz.), uiteindelijk leidend naar de lichtuitvoer 207 (in de vorm van een videobeeld) welke wordt uitgezonden door de LED's of pixels, gecontrolleerd door de constant current driver(s). Opgemerkt wordt dat als programmeertaal VHDL kan worden gebruikt, of als alternatief ook Verilog van toepassing is.
Woordenlijst
Figuur 5
B only = enkel b
Figuur 6
Red non linearity = rood niet-lineariteit
Red Corr formula = rood corr formule
Series = Reeks
Linear = lineair
Figuur 9
Symbol = symbool
Pin Name = pin naam
Function description = functiebeschrijving
Data Input = gegevensinvoer
CLK Input = CLK invoer
Ground, grounding = aarding
Power = voeding
CLK output = CLK uitvoer
Control signal Input data = controlesignaal invoergegevens
Control signal Input Clock data = controlesignaal invoer klokgegevens
The signal and power supply and grounding = het signaal, de stroomtoevoer en de aarding
Power supply pin = voedingspin
31 BE2022/5881
Control signal output clock data = controlesignaal output klokgegevens
Control signal output data = controlesignaal uitvoergegevens
Figuur 10
Shunt Regulator = shunt regelaar
Pulse Generator = pulsgenerator
Reset = resetten
Outen = uit
Interface Control = interface controle 32-Bit shift register = 32-Bit schuifregister
Upper = bovenste
Lower = onderste
Command Decoder = commando decoder 24-Bit Data Latch = 24-Bit datavergrendeling
Internal Oscillator = interne oscillator
GS Clock Counter = GS klokteller 8-Bit PWM Timing Control with Simple Gamma Correction = 8-Bit PWM timingregeling met eenvoudige gammacorrectie
Switching Delay = schakel vertraging 3-Channel Sink Driver = 3-kanaals zink stuurprogramma
Figuur 11
VGEN with individual current gain control = VGEN met individuele stroomversterkingsregeling
Digital Regulator = digitale regelaar
Power saving = vermogen besparing
Voltage Reference = spanningsreferentie
Deghost = ontgeesten
Bit count control = controle van het aantal bits
Control and Synchronization = controle en synchronisatie
Configuration Register = configuratie register
Scan Control = scan controle 48bit ping pong SRAM support = 48-Bit ping pong SRAM ondersteuning
R/G/B comparator = R/G/B vergelijker
32 BE2022/5881
Output Buffer = uitvoerbuffer 48ch Constant Current Source = 48ch constante stroombron 16bit shift register (FIFO) = 16-Bit schuifregister (FIFO) 48bit Error Status = 48-Bit foutstatus
Error Detection = foutdetectie
Bi-direction Control = bi-directionele controle
Figuur 14
Voltage = spanning
Time constant = tijdsconstante
Figuur 20 output = uitvoer

Claims (15)

33 BE2022/5881 Conclusies
1. Een werkwijze (300) voor het bepalen van niet-lineaire display pixeldriver compensatie (30) uitgevoerd door een verwerkingssysteem (20) van een licht-emitterend display (10) gekenmerkt door één of meer kleuren (15), waarbij het licht-emitterend display (10) pixels (40) omvat die worden gecontrolleerd door pixeldrivers (45), waarbij de werkwijze (300) omvat: (i) het meten (301) van waarden (31) voor ten minste één van de één of meer kleuren; (ii) het berekenen (302) van waarden (32) voor de ten minste één van de één of meer kleuren; (iii) het vergelijken (303) van gemeten en corresponderende berekende waarden; (iv) het waarnemen (304) van een afwijking in de gemeten waarden als gevolg van niet-lineariteiten, en het bepalen (305) van genoemde afwijking als de niet-lineaire pixeldriver compensatie (30).
2. De werkwijze (300) volgens conclusie 1, waarbij voorafgaand aan alle stappen (i) tot (iv), kalibratie (500) wordt uitgevoerd door middel van (a) het lezen, laden of invoeren (501) van de waarden (51) gemeten voor de één of meer kleuren van het display (10); (b} het lezen, laden of invoeren (502) van de targetwaarden (52) voor de één of meer kleuren van het display (10); en (c) voor de één of meer kleuren, het berekenen (503) van corresponderende kalibratiematrices (50) op basis van de gemeten en targetwaarden (51, 52); en bij het berekenen van waarden (32) in stap (ii) de kalibratiematrices (50) gebruiken.
3. De werkwijze (300) volgens conclusie 2, waarbij de kalibratiematrices (50) gebaseerd zijn op display-inhoudcontext en/of display-instellingen..
4. De werkwijze (300) volgens conclusie 1 tot 3, waarbij het licht-emitterend display (10) wordt gekenmerkt door ten minste drie kleuren.
5. De werkwijze (300) volgens conclusie 1 tot 4, waarbij het bepalen wordt uitgevoerd voor elke displaypixel of cluster van displaypixels.
6. Een werkwijze (600) voor het implementeren van niet-lineaire display pixeldriver compensatie (30), uitgevoerd door een verwerkingssysteem (20) van een licht- emitterend display (10) gekenmerkt door één of meer kleuren (15), waarbij de licht- emitterend display (10) pixels (40) omvat die worden gecontrolleerd door pixeldrivers (45), waarbij de werkwijze (600) omvat: (i) het bepalen (601) van de niet-lineaire display pixeldriver compensatie (30) op basis van de werkwijze ( 300) van conclusie 1 tot 5, of
34 BE2022/5881 het lezen, laden of invoeren (602) van de niet-lineaire display pixeldriver compensatie (30), bepaald op basis van de werkwijze (300) van conclusie 1 tot 5, en (ii) het compenseren (603) voor genoemde afwijking bepaald als de niet-lineaire pixeldriver compensatie (30).
7. De werkwijze volgens conclusie 6, waarbij het compenseren (603) is gebaseerd op de helderheid gedefinieerd door een wiskundige formule.
8. De werkwijze volgens conclusie 6, waarbij het compenseren (603) is gebaseerd op het gebruik van één of meer opzoektabellen, in het bijzonder op wat is opgeslagen in de één of meer opzoektabellen, die elk bestaan uit invoerwaarden en corresponderende uitvoerwaarden die rekening houden met de niet-lineariteiten.
9. De werkwijze volgens conclusie 8, waarbij het compenseren (603) is gebaseerd op wat is opgeslagen in een aantal opzoektabellen met verminderde bitrepresentatie, in het bijzonder wordt het compenseren gedefinieerd uit interpolatieberekeningen die tussen deze worden uitgevoerd.
10. De werkwijze volgens conclusie 6 tot 9, waarbij het compenseren (603) wordt uitgevoerd voor elke displaypixel of cluster van displaypixels.
11. Een werkwijze voor het weergeven van een beeld (70) op een licht-emitterend display (10) met niet-lineaire display pixeldriver compensatie (30), omvattende: (i) het bepalen van de niet-lineaire display pixeldriver compensatie (30) op basis van op de werkwijze (300) van conclusie 1 tot 5, of het lezen, laden of invoeren van de niet-lineaire display pixeldriver compensatie (30), bepaald op basis van de werkwijze (300) van conclusie 1 tot 5; (ii) het implementeren van de niet-lineaire display pixeldriver compensatie (30) op basis van de werkwijze (600) van conclusie 6 tot 10; en (iii) het weergeven (700) van het beeld (70) op het display (10).
12. De werkwijze volgens conclusie 11, waarbij een extra temperatuurcorrectie wordt toegepast.
13. Een systeem (80) voor een licht-emitterend display (10), in het bijzonder voor het aansturen van licht-emitterende elementen of pixels (40) daarvan, omvattende een invoerprotocol (81) voor het ontvangen van invoer en een PWM-genererende module (84) voor het omzetten van genoemde invoer in signalen die moeten worden geleverd
35 BE2022/5881 aan pixeldrivers (45), waarbij de licht-emitterende elementen of pixels (40) in de door hen uit te zenden uitvoer worden gedefinieerd en gecontrolleerd, met het kenmerk dat genoemd systeem (80) een module (83) omvat voor het bepalen en implementeren van niet-lineaire display pixeldriver compensatie (30) volgens de werkwijze (300, 600) van respectievelijk conclusie 1 tot 5 en conclusie 6 tot 10.
14. Het systeem (80) volgens conclusie 13, verder omvattende een module (82) voor het uitvoeren van kalibratie (500) en hierbij kalibratiematrices (50) bepalend die moeten worden gebruikt bij het definiëren van de uitvoer die moet worden uitgezonden door de licht-emitterende elementen of pixels (40).
15. Het systeem (80) volgens conclusie 13, waarbij het compenseren van de werkwijze (600) voor het implementeren van niet-lineaire display pixeldriver compensatie (30), in het bijzonder is gebaseerd op het gebruik van één of meer opzoektabellen en op de gegevens die voor deze één of meer opzoektabellen zijn opgeslagen in en dus moeten worden opgehaald uit een niet-vluchtig geheugen van het verwerkingssysteem (20), waarbij de één of meer opzoektabellen elk bestaan uit invoerwaarden en corresponderende uitvoerwaarden, welke rekening houden met de niet-lineariteiten die moeten worden opgenomen in de signalen voor de pixeldrivers (45).
BE20225881A 2022-03-07 2022-10-27 Methode voor niet-lineaire compensatie in display-toepassingen BE1030282B1 (nl)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP23160521.3A EP4243006A1 (en) 2022-03-07 2023-03-07 Method for non-linear compensation in display applications

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US202263317178P 2022-03-07 2022-03-07

Publications (2)

Publication Number Publication Date
BE1030282A1 true BE1030282A1 (nl) 2023-09-12
BE1030282B1 BE1030282B1 (nl) 2023-10-12

Family

ID=85157231

Family Applications (1)

Application Number Title Priority Date Filing Date
BE20225881A BE1030282B1 (nl) 2022-03-07 2022-10-27 Methode voor niet-lineaire compensatie in display-toepassingen

Country Status (1)

Country Link
BE (1) BE1030282B1 (nl)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019215219A1 (en) 2018-05-08 2019-11-14 Stereyo Bvba Standalone light-emitting element display tile and method
US20200286424A1 (en) 2019-03-07 2020-09-10 Stereyo Bvba Real-time deformable and transparent display

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019215219A1 (en) 2018-05-08 2019-11-14 Stereyo Bvba Standalone light-emitting element display tile and method
US20200286424A1 (en) 2019-03-07 2020-09-10 Stereyo Bvba Real-time deformable and transparent display

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
THIELEMANS R: "Handbook of Visual Display Technology", 2012, SPRINGER, article "LED Display Applications and Design Considerations"

Also Published As

Publication number Publication date
BE1030282B1 (nl) 2023-10-12

Similar Documents

Publication Publication Date Title
KR102446033B1 (ko) 색역 변환 방법 및 이를 채용한 표시 장치
JP6775326B2 (ja) 色調整方法、色調整装置及び表示システム
KR100758295B1 (ko) 감마 보정 장치 및 이를 구비한 디스플레이 장치 그리고그것의 감마 보정 방법
WO2019214449A1 (zh) 屏幕亮度的控制方法、装置及终端设备
US8279234B2 (en) Method and system of generating gamma data of display device
TWI395180B (zh) 顯示裝置,視頻信號處理方法,及程式
JP4845825B2 (ja) 多色表示装置
US8786585B2 (en) System and method for adjusting display based on detected environment
US7038735B2 (en) Video display system utilizing gamma correction
US7995080B2 (en) Image display apparatus
KR20080009497A (ko) 다색 표시 장치 및 그 구동 방법
JP2010524046A (ja) Rgbw型ディスプレイの較正
CN108257557B (zh) 像素亮度值补偿方法
KR20040015376A (ko) 감마 보정을 하기 위한 방법 및 디바이스
CN111862880B (zh) 多颜色伽玛校正表获取方法和显示控制方法、装置及系统
CN114067724B (zh) 灰度数据处理方法、装置及系统和显示装置
US10580384B1 (en) Panel calibration using multiple non-linear models
KR20200015863A (ko) 색역 제어 장치 및 방법, 색역 제어 장치를 포함하는 표시 장치
BE1030282B1 (nl) Methode voor niet-lineaire compensatie in display-toepassingen
KR20220010650A (ko) 영상 데이터 보정 장치 및 이를 포함하는 표시 장치
JP2006195306A (ja) 発光素子の駆動方法、発光素子の駆動装置、表示装置
KR20030097507A (ko) 평판 표시 장치의 색도 보정 장치 및 그 방법
US20090021523A1 (en) Display Apparatus
KR101948843B1 (ko) 룩업테이블을 이용한 표시장치 화소 제어 시스템 및 그 방법
JP4770873B2 (ja) Led駆動システムおよびその制御方法

Legal Events

Date Code Title Description
FG Patent granted

Effective date: 20231012