Pixels en subpixels

Op een dag vroeg ik me af: 'Waarom zijn de RAW-bestanden van mijn camera? Nikon D700 zo weinig wegen?'. Terwijl ik op zoek was naar een antwoord, vond ik een aantal zeer interessante informatie.

Over pixelkunst

Over pixelkunst

Dus tijdens het fotograferen gebruik ik soms het RAW-bestandsformaat (Nikon noemt het NEF - Nikon Electronic Format - Nikon's elektronische bestandsformaat). RAW-bestanden van Nikon bepaalde instellingen hebben, Ik gebruik meestal 14-bits kleurdiepte met verliesvrije of geen compressie. Over het algemeen wegen 14-bits ongecomprimeerde NEF-bestanden ongeveer 24.4 MB. In de onderstaande afbeelding heb ik de grootte van mijn bestanden in bytes weergegeven.

NEF-bestandsgrootten op mijn Nikon D700-camera

NEF-bestandsgrootten op mijn Nikon D700-camera

Zoals u kunt zien, zijn de bestanden bijna even groot. Neem bijvoorbeeld het bestand ARK-4820.NEF, het gewicht is 25 bytes of 621 MB. Bytes naar Megabytes worden heel eenvoudig vertaald:

25 / 624 = 760

Ik wil uw aandacht vestigen op het feit dat het verschillende gewicht van RAW (NEF)-bestanden te wijten is aan het feit dat ze niet alleen nuttige 'onbewerkte' informatie bevatten, maar ook een kleine voorbeeldafbeelding, evenals EXIF gegevensmodule. Het voorbeeldbeeld wordt gebruikt om het beeld snel op de cameramonitor te bekijken. De camera hoeft tijdens het snel bekijken geen zwaar 25 MB-bestand te downloaden, maar haalt gewoon een miniatuurafbeelding eruit en toont deze op het display. Deze afbeeldingen zijn hoogstwaarschijnlijk gecodeerd met JPEG en het JPEG-algoritme is zeer flexibel en vereist een andere hoeveelheid informatie voor opslag voor elke afzonderlijke miniatuur.

14-bits kleurdiepte betekent dat elk van de drie primaire tinten gecodeerd met 14 bits geheugen. Wanneer u bijvoorbeeld op de 'vraagteken'-knop klikt op het bijbehorende menu-item van de camera Nikon D700 u kunt het volgende lezen:

'NEF (RAW)-beelden worden opgenomen met 14-bits kleurdiepte (16384 niveaus). Tegelijkertijd zijn de bestanden groter en nauwkeuriger reproductie van tinten'

De kleur wordt gevormd door drie basistinten te mengen - rood R (Rood), blauw B (Blauw), groen G (Groen). Als we dus 14-bits kleurdiepte gebruiken, kunnen we elk van de 4 kleuren krijgen. (elk van vier miljard driehonderd achtennegentig miljard zesenveertig miljoen vijfhonderd elfduizend honderd en vier kleuren).

Het is gemakkelijk te berekenen: 16384 (R) * 16384 (G) * 16384 (B)

In feite is 4 miljard veel meer dan nodig is voor normale kleurweergave, er wordt zo'n groot aanbod aan kleuren gebruikt voor eenvoudige beeldbewerking. En om één 'pixel' van de afbeelding op deze manier te coderen, zou het nodig zijn 42 bits geheugen:

14 bit R + 14 bit G + 14 bit B = 42 bits

Мой Nikon D700 maakt afbeeldingen van maximale kwaliteit 4256 bij 2832 pixels, wat precies 12 pixels oplevert (ongeveer 052 miljoen pixels, of gewoon 992 MP). Als afbeeldingen van mijn . coderen Nikon D700, zonder het gebruik van compressie- en datacompressie-algoritmen, en met een 14-bits kleurdiepte, blijkt dat je 506 bits aan informatie moet gebruiken (225 bits / pixel maal 664 pixels). Dit is gelijk aan 42 bytes of 12 MB geheugen.

Vraag: waarom wordt berekend dat er ongeveer 60 MB geheugen nodig is voor één afbeelding, maar in werkelijkheid krijg ik bestanden van slechts 24.4 MB? Het geheim zit hem in het feit dat het originele RAW-bestand geen 'echte' pixels opslaat, maar informatie over de subpixels van de CMOS-matrix Nikon D700.

In de beschrijving van de camera vind je het volgende:

Fragment uit de instructies voor de Nikon D700

excerpt uit de instructies voor de Nikon D700

Dat wil zeggen, de instructies zeggen over 'effectieve pixels' en over het 'totale aantal' pixels. Het aantal effectieve pixels is heel eenvoudig te berekenen, maak gewoon een opname in JPEG L Fine-modus en krijg een beeld van 4256 bij 2832 pixels, wat gelijk is aan de 12 pixels die eerder zijn beschreven. Als we naar boven afronden, krijgen we de 052 MP aangegeven in de instructie. Maar wat is dit 'totale aantal pixels', waarvan er bijna een miljoen (992 MP) meer (12.1 MP) zijn?

Om dit te begrijpen volstaat het om te laten zien hoe de lichtgevoelige camerasensor eruit ziet. Nikon D700.

Bayer-filter

Bayer-filter

Als je goed kijkt, creëert de Bayer-matrix geen 'veelkleurig' beeld. De matrix registreert eenvoudig groene, rode en blauwe stippen, met twee keer zoveel groene stippen als rode of blauwe stippen.

geen echte pixels

'Niet echte' pixel

In feite bestaat deze matrix niet uit pixels ('in de gebruikelijke zin'), maar uit subpixels of registrarcellen. Doorgaans implicerendat een pixel een punt in een afbeelding is dat elke kleur vertegenwoordigt. Op een CMOS-sensor Nikon D700 er zijn alleen subpixels, die alleen verantwoordelijk zijn voor de drie hoofdtinten, op basis waarvan 'echte', 'multi-color' pixels worden gevormd. De Nikon D700 heeft ongeveer 12 van deze subpixels, in de handleiding ook wel 'effectieve' pixels genoemd.

Er zitten geen 'echte' 12 MP op de Nikon D700 sensor. En de 12 MP die we in de uiteindelijke afbeelding zien, is het resultaat van een harde wiskundige interpolatie van 12.87 Mega subpixels!

Gemiddeld wordt elke subpixel door algoritmen omgezet in één echte 'pixel'. Dit gebeurt door aangrenzende pixels. Hier is gewoon verborgen'pixel straat magie'. Evenzo is 4 miljard kleuren ook het werk van het debayerization-algoritme.

Subpixels en pixels

Het hoofdidee van het artikel: subpixels en pixels. Er worden 12 miljoen subpixels aan ons verkocht voor de prijs van 12 miljoen 'echte pixels'.

Heel grof gezegd noemden marketeers de subpixels van het Bayer-filter 'pixels' en maakten zo een vervanging van de betekenis van woorden. Alles hangt samen met wat u precies onder het woord 'pixel' moet verstaan.

Laten we terugkeren naar de berekeningen van het aantal bestanden. In feite slaat het NEF-bestand slechts 14 bits informatie op voor elke subpixel van het Bayer-filter, wat eigenlijk dezelfde tintdiepte is. Aangezien er 12 van dergelijke subpixels op de matrix zijn (het aantal is bij benadering, aangegeven in de instructies), vereist de opslag van de informatie die daaruit is verkregen:

12 * 870 bits=000 bits of 14 MB

En toch kreeg ik op geen enkele manier de 24,4 MB die ik op mijn computer waarneem. Maar als we gegevens toevoegen van EXIF en JPEG PreviewImage, kunt u de eerste 24,4 MB krijgen. Het blijkt dat het RAW-bestand ook opslaat:

24,4-21,48=2,92MB extra gegevens

Belangrijk: soortgelijke berekeningen kunnen worden gemaakt voor camera's met CCD-sensoren en RAW-bestanden zonder compressie - Nikon D1, D1h, D1x, D100, D200, evenals JFET (LBCAST)-matrices - Nikon D2h, D2hs. In feite is er geen verschil Is het CCD of CMOS? – ze gebruiken nog steeds het Bayer-filter en subpixels om het beeld te vormen.

Maar Sigma-camera's met Foveon-matrices hebben een veel grotere RAW-bestandsgrootte voor dezelfde 12 MP in vergelijking met een CMOS-matrix die één echte pixel codeert met drie pixels primaire kleuren (zoals verwacht), dit bevestigt alleen maar mijn redenering. Trouwens, er verscheen er nog een op Radozhiv interessant artikel и nog een.

Bevindingen

Camera's die Bayer-filtermatrices gebruiken (CCD, CMOS - het maakt niet uit) niet het gedeclareerde werkelijke aantal 'echte' pixels hebben. op de matrix er is slechts een set subpixels (foto-elementen) van het Bayer-patroon, waaruit met behulp van speciale complexe algoritmen 'echte' beeldpixels worden gecreëerd. Over het algemeen ziet de camera helemaal geen kleurenbeeld, de cameraprocessor werkt alleen met abstracte getallen die verantwoordelijk zijn voor een bepaalde tint rood, blauw of groen, en het maken van een kleurenbeeld is het zijn gewoon wiskundige trucs. Eigenlijk is het daarom zo moeilijk om op veel CZK's de 'juiste' kleurweergave te krijgen.

атериалы о теме

  1. Full frame spiegelloze systemen. Discussie, keuze, aanbevelingen.
  2. Bijgesneden spiegelloze systemen. Discussie, keuze, aanbevelingen.
  3. Bijgesneden spiegelloze systemen die hun ontwikkeling hebben stopgezet of aan het beëindigen zijn
  4. Digitale spiegelsystemen die hun ontwikkeling hebben stopgezet of beëindigd
  5. JVI of EVI (een belangrijk artikel dat antwoord geeft op de vraag 'spiegel of spiegelloos')
  6. Over spiegelloze batterijen
  7. Eenvoudig en duidelijk middenformaat
  8. Vooral snelle oplossingen van Chinese merken
  9. Alle snelste zoomlenzen met autofocus
  10. Alle snelste prime-lenzen met autofocus
  11. Gespiegeld full frame op spiegelloos middenformaat
  12. Autofocus Snelheidsboosters
  13. Eén lens om de wereld te regeren
  14. De impact van smartphones op de fotografiemarkt
  15. Wat is de volgende stap (smartphone suprematie)?
  16. Alle aankondigingen en nieuwigheden van lenzen en camera's

Reacties op dit bericht vereisen geen registratie. Iedereen kan een reactie achterlaten. Veel verschillende fotoapparatuur is te vinden op AliExpress.

Materiaal voorbereid Arkadi Shapoval. Trainingen/consulten | YouTube | Facebook | Instagram | Twitter | Telegram

 

Voeg een reactie toe: lynx

 

 

Opmerkingen: 153, over het onderwerp: Pixels en subpixels

  • anonymus

    Ik pas het in ieder geval aan :)
    miljoen = 10^6
    miljard = 10^9, miljard ook = 10^9, alleen de voornaam is traditioneel en geaccepteerd in het Russisch, en de tweede is wetenschappelijk en internationaal.
    biljoen = 10^12
    maar het getal 4 is vier biljoen driehonderd achtennegentig miljard (miljard) zesenveertig miljoen vijfhonderd elfduizend honderd en vier.

  • Anoniem-1

    Nou, zeker: een wiskundige schizodown-show! Van FMTI tot fotoliefhebbers! Wiskundigen zullen binnenkort een loopneusmodel bouwen en het waarschijnlijke aantal niesbuien berekenen, afhankelijk van de inerte massa van snot... En op basis van dit model zullen ze het optimale bruikbare aantal pixels afleiden in de matrix gevormd door een zakdoek... Laten we rijk en gelukkig leven!

    • Roman

      Zonder wiskundigen en hun werken vermoed ik sterk dat we nog steeds rotsschilderingen zouden moeten doen. Nou ja, of verf met olieverf.

      Bayer-filters en interpolatie zijn een van de weinige manieren om afbeeldingen uit een matrix te halen. Als we vier subpixels als één pixel tellen, krijgen we een afbeelding die in hoogte en breedte half zo groot is. Maar tegelijkertijd verliezen we dat onbeduidende deel van de informatie die wordt verkregen met het gemengde gebruik van verschillende kanalen, inclusief informatie over verdubbelde helderheid van twee groene subpixels.

      • Nicholas

        Vier subpixels kunnen niet als één pixel worden beschouwd, aangezien elk verschillende informatie bevat, zelfs ondanks de aanwezigheid van een filter.

        • Alexander

          Waarom tel je 3 RGB-subpixels als één op een monitor? Ook daar heeft elk andere informatie. Bij Bayer is het verschil plus één groene subpixel, wat in theorie de helderheid zou moeten vergroten ten koste van de kleur.

          • een LastMan

            Naast Alexander
            Groen, er is een extra pixel gemaakt om de gevoeligheid voor groen te vergroten.
            Het gebeurde zo dat een persoon bijna onverschillig staat voor blauw en dat hij meer groen nodig heeft.
            Er bestaat zoiets, spectrale gevoeligheid: EY = 0,30ER + 0,59 EG + 0,11EB
            In feite worden op computers 16 bits kleur gecodeerd als 565 (RGB) bits per pixel, één bit geeft een meetbereik dat twee keer zo groot is. Wat bijna in de bovenstaande formule valt.
            Om niet al te veel met wiskunde bezig te zijn, hebben we nog een extra pixel gemaakt, wat ook technologisch eenvoudiger is - om alle pixels hetzelfde te maken.

            Daarom veranderen 4 pixels (RGBRG) gemakkelijk in 0,30ER + 0,59 EG + 0,11EB en vervolgens in RGB.

  • Anoniem-1

    Inderdaad, geen fotografen, maar beeldontvangers, fotorecorders, consumenten van kleurinformatie, pixeltellers ... Heb je geprobeerd het aantal penseelstreken te tellen in Leonardo's schilderijen? Hallo!! Het werk is een zee, en het brein is in bedrijf, het droogt niet uit ...

    • Alexander

      Jongeman, het is beter om de hersenen in stilte te benijden, en tegelijkertijd is het beter om te studeren om de kloof te verkleinen, en de jaloezie neemt af

  • Vadim

    Dus ik wil mijn "5 cent" invoegen :)
    -
    1) Ten eerste hoop ik dat nadat iedereen heeft geleerd over de mechanismen van debayerisatie, er niets in hun leven zal veranderen: ze zullen niet massaal digitale camera's weggooien, hun favoriete foto's wissen, zelfmoord onthouden ("Oh, hoe kon ik het verdragen al die tijd zo bedrog?”), enz.
    -
    2) Ten tweede vroeg iemand camerafabrikanten wat ze bedoelen met "PIXEL"? Waarom zijn al degenen die hier bijeen zijn er zeker van dat ze zijn bedrogen, bedrogen, gegooid? Hebben Nikon of Canon ons ervan overtuigd dat we het hebben over RGB, RGGB of andere meerkanaalspixels? Er wordt ons verteld over het aantal cellen in de matrix als geheel (totaal aantal pixels) en hoeveel UNIEKE combinaties (dat wil zeggen, wat dan pixels op het scherm worden) camera's en software uit deze cellen verzamelen (effectieve pixels).
    -
    3) Ten derde hebben we het niet over het opvullen van enkele leemten met niet-bestaande gemiddelde (interpolatie) of voorspelde gegevens (extrapolatie). We hebben het over het feit dat subpixels tijdens debayerisatie op verschillende manieren kunnen worden gecombineerd. En elke combinatie is uniek, wat betekent dat het kan claimen een schermpixel te worden.
    -
    4) Ten vierde is het nog steeds verdomd goed dat ze nog niet het onderwerp hebben aangesneden van hoe deze pixels die op een onbegrijpelijke manier verschijnen, anders worden weergegeven op verschillende schermen, en meer nog - hoe er een gedrukt raster van wordt gevormd! :)
    -
    Alles, "5 kopeken" ingevoegd, ik zal rennen om foto's te maken, anders heb ik het gevoel dat ik kostbare tijd verspil.

    • Denis

      Ik abonneer me op elke cent :)

    • lynx

      Uw 5 kopeken zijn precies 4.
      Maken jullie ook camera's? ))

      • Vadim

        Ik denk erover na :).
        En daar zijn de aanhalingstekens voor nodig, zodat het een door het ander kan worden genoemd.

    • Виталий

      Nou ja, tenminste één goed opgeleide persoon.
      Wat in het artikel wordt beschreven, is helemaal geen nieuws, maar voor geïnteresseerden, en vooral natuurkundigen, is het een lang bekende waarheid. De manier waarop het is gedaan, is de enige juiste beslissing. Wat zou je leuk vinden? Voor elke pixel die uit een RGB-triade komt? En dit volk verklaart daarna dat 36 megapukeles op een oogst veel is? Wat zou dan de grootte van de microlenzen zijn als elke pixel uit drie gevoelige elementen zou zijn gevormd? Leer het materiaal kennen en dan zul je niet verbaasd zijn over de werkelijke stand van zaken. De fabrikant zorgt gewoon voor ons, maakt de pixel "vet" en er is hier geen bedrog.

      • Oleg

        >> De manier waarop het is gedaan is de enige juiste beslissing
        Waarom is het juist? Het feit dat je foto's meer begonnen te wegen, en het aantal overdreven megapixels is koeler.
        >> De fabrikant zorgt gewoon voor ons, maakt de pixel "vet" en er is hier geen bedrog.
        Heilige onschuld. De fabrikant is een bourgeois die alleen om zijn eigen winst geeft en niets anders. Marketeers slachten bijvoorbeeld op kunstmatige wijze bepaalde chips, waardoor ze gedwongen worden duurdere modellen te kopen. Ze vervangen de termen zodat de getallen groter zijn, stil dat deze term is vervangen.

        • Виталий

          Pixels zijn helemaal niet overdreven, maar echt!!! Om gezwollen pixels te claimen, moet je eerst leren matchen!!! Ik wilde echt nare woorden met deze woorden zeggen, maar ik zal me onthouden. Ja, je zou de eerste zijn die huilt over de diffractiedrempel, gebrek aan scherpte en enorme ruis, vanwege het minimale oppervlak van lichtgevoelige elementen, als elke pixel zou zijn gevormd uit drie sensoren. Onthoud: een groter lichtgevoelig element verzamelt meer fotonen, dus minder ruis, lagere diffractiedrempel, betere scherpte.

          • Oleg

            Je hebt gelijk over de grootte van het element, maar dat maakt het deb niet anders dan vervaging. Schulden zijn in wezen een banale waas. Van een 10*10 sensor krijg ik 100 bytes aan informatie over het object. Als je een foto 10 * 10 maakt, dan is dit 300 bytes (3 bytes per pixel). Waar heb je 200 bytes aan nieuwe informatie over het object vandaan? En je nam het gemiddelde van aangrenzende pixels, dit is een banale vervaging.
            Gedachte experiment. We maken een foto, zeg 100x100 (liefst scherper). En op het Bayer-raster in elke pixel laten we slechts 1 subpixel over en doven de resterende 2 subpixels. Kun je de debayerisatie van deze foto gebruiken om de originele afbeelding te krijgen? Kun je me vertellen wat de helderheid van de uitgedoofde subpixels in elke pixel was? Je zult het niet met zekerheid zeggen, je smeert het maximum van de naburige.
            Over het materieel, je blaast je wangen af. Als je het er niet mee eens bent, geef dan argumenten, en schudden met lege lucht heeft geen zin.

          • Vadim

            Dezelfde hoeveelheid informatie uit een RAW-bestand kan op verschillende manieren worden geanalyseerd en geïnterpreteerd. Met verschillende kwaliteit, snelheid, nauwkeurigheid, afhankelijk van de taken. En daar zal veel van afhangen.
            -
            Maak een moeilijke RAW-opname door verschillende converters: modern en tien jaar oud. Voel het verschil in ruis, detail, kleur. Hebben we de hoeveelheid initiële informatie verhoogd? Nee, we hebben er zojuist beter mee leren werken en hebben daardoor een veel interessantere versie gekregen.

        • Vadim

          De fabrikant is een bourgeois die goede proeflezers, advocaten, advocaten, marketeers en andere slimme mensen in zijn personeel heeft. Daarom WEET de fabrikant PRECIES wat HIJ NEEMT met het woord "pixel". En als dit niet overeenkomt met mijn, uw of andere meningen, zijn dit al onze problemen.
          -
          Er is geen bedrog, er is een woord waar verschillende mensen verschillende betekenissen aan geven.
          Een pixel is voor jou bijvoorbeeld een zichtbaar punt op het scherm waarvan de eigenschappen worden beschreven door de helderheidscomponenten van de RGB-kanalen.
          Voor bijvoorbeeld een printer is dit een conditionele dot die na conversie slecht probeert weer te geven op het scherm als RGB-pixel, maar in werkelijkheid 4 kanalen heeft (CMYK).
          Fabrikanten van specifieke camera's in relatie tot specifieke matrices hebben hun eigen begrip van de pixel.
          -
          Er is niet één juiste oplossing voor wat een "pixel" of een "subpixel" zou moeten worden genoemd. Iedereen heeft zijn eigen mening over deze kwestie. Het is belangrijk dat we allemaal, terwijl we dit onderwerp fel bespreken, nu de volgorde van de dingen begrijpen en een schoppen een schoppen kunnen noemen.

          • Oleg

            Zowel op het scherm als op print is een pixel een elementair onderdeel van een afbeelding dat elke kleur kan hebben, niet alleen rood of blauw of groen. Camerafabrikanten interpreteren de term pixel niet zoals iedereen, maar omdat het voor hen winstgevender is. En fabrikanten van harde schijven gigabytes is 10E9 bytes, niet 1024 * 1024 * 1024. Omdat het voor hen voordeliger is.

          • Виталий

            Dat klopt - in de roos

          • Vadim

            Het voorvoegsel "giga-" in ISO betekent 10 tot de negende macht en niets anders.
            Je verwart "gibi-" met "giga-".
            Meer informatie over binaire voorvoegsels:
            http://ru.wikipedia.org/wiki/%D0%94%D0%B2%D0%BE%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D1%81%D1%82%D0%B0%D0%B2%D0%BA%D0%B8

          • Vadim

            Ik bedoel, volgens SI en JEDEC :)

          • Виталий

            Vadim, de waarheid staat volledig aan jouw kant. Ik heb op mijn beurt niet eens geraden dat zoveel mensen niet eens het proces vertegenwoordigden van het verzamelen van informatie uit de matrix. Ik dacht dat alle digitale fotografen dit proces al begrijpen. En het blijkt...

          • Vadim

            Natuurlijk kan een pixel elke kleur hebben. Alleen deze kleur moet op de een of andere manier worden aangewezen. Monochrome pixels (niet noodzakelijk wit-grijs-zwart) kunnen worden beschreven door één kanaal, kleurpixels door drie of meer, en ze kunnen op verschillende manieren worden weergegeven (HSL, LAB, RGB, CMYK, enz.).
            Camerafabrikanten vermelden het totale aantal monochrome pixels (die informatie in één kanaal vervoeren, ongeacht welk kanaal het is).
            Pixels op het scherm zijn meerkanaals (dat wil zeggen, we nemen ze als zodanig waar). Hoeveel kanalen er zijn, of er subpixels zijn, hangt af van de beeldtechnologie.
            En bij kleurenafdrukken zijn pixels ook meerkanaals. En kanalen, meestal, minstens één meer dan wanneer ze op het scherm worden weergegeven. En het hangt ook af van de printtechnologie.
            -
            Die. pixels zijn anders. Het begrijpen van deze eenvoudige stelling zal het leven gemakkelijker maken.

        • Виталий

          Lees hier http://www.cambridgeincolour.com/ru/tutorials/camera-sensors.htm , alleen bedachtzaam, zeer begrijpelijk geschilderd.

          • Oleg

            http://arttower.ru/wiki/index.php?title=%D0%A4%D0%B8%D0%BB%D1%8C%D1%82%D1%80_%D0%91%D0%B0%D0%B9%D0%B5%D1%80%D0%B0
            Hier aan het einde is een voorbeeld met een gans. En aan het eind schrijven ze:
            Zoals je op de foto kunt zien, bleek deze afbeelding waziger te zijn dan de originele. Dit effect gaat gepaard met het verlies van bepaalde informatie als gevolg van de werking van het Bayer-filter.

            Die. Het Bayer-filter herstelt de oorspronkelijke informatie niet voor 100%! het interpoleert (smeert) het van naburige pixels.

          • Vadim

            Gek voorbeeld :)))
            Hoe zit het met de originele afbeelding zonder debayerization? Of gefilmd en vervolgens gescand?
            Niemand zegt: laten we tegelijkertijd op drie-vier-... matrices schieten, echte meerkanaalspixels krijgen, het vergelijken met de ellendige "Bayer-roosters" - en, zoals, voel het verschil.
            In deze epische discussie proberen de mensen slechts een paar stellingen over te brengen:
            1) ELKE informatie over ELK object hersteld van ELKE bron is niet origineel en heeft een discrete kwaliteit. Conclusie: ga naar liveconcerten, reis, bekijk live zonsondergangen, ruik bloemen, geniet van elke lepel borsjt, hou van je dierbaren, enz.
            2) als je geen ingenieur (van nature), maar een fotograaf bent (van beroep, of je hebt zo'n hobby), maak je dan minder zorgen over de diepe technische details van het proces van het maken van een foto (hoe sensorcellen worden opgeladen, enz.) .). Laat de ingenieurs erover nadenken. Conclusie: oefen, verbeter je vaardigheden. IJzer zal na verloop van tijd beter worden. En of je er beter van wordt, is aan jou.
            3) om u niet bedrogen te voelen, specificeer de dingen die u interesseren. Mensen noemen hetzelfde vaak anders, of vice versa, plaatsen verschillende betekenissen in dezelfde woorden. Conclusie: het vinden van een gemeenschappelijke taal helpt in de winkel, op het werk en in het gezinsleven.
            4) waarheid wordt geboren in geschillen. We zijn hier niet om Arkady's pagina te overspoelen of uit te zoeken wie slimmer is. Ik heb een aantal aspecten van het verkrijgen en analyseren van een afbeelding met een frisse blik bekeken. Dit is interessant voor mij, omdat. Ik ben oogarts. Iemand vanaf deze dag zal de voorvoegsels "kilo-", "giga-", "kibi-", "gibi-" correct gaan gebruiken. Conclusie: constructieve discussies maken de wereld een betere plek :)

          • Oleg

            Ik wist niets van Gibi. Het blijkt dat Windows niet volgens de standaard wordt weergegeven, wie had dat gedacht.

          • Vadim

            Trouwens, ja, vanwege Microsoft hebben velen gespuugd over de naleving van normen. Hier ben ik onlangs ook achter gekomen.

  • Andrew

    Eerlijk gezegd maakt het me absoluut niet uit hoe ze heten en werken. Ik heb er geen invloed op. En dan hebben we het over het zichtbare spectrum ... met onze flexibele en tegelijkertijd zeer onvolmaakte ogen. We zien en beoordelen allemaal anders. Figley vult dan zijn hoofd met onzin. En het begint nu: je hebt de verkeerde matrix, je hebt "granaten van het verkeerde systeem" ...
    Ik denk niet dat iemand me heeft bedrogen of misleid ... Ik ben meer bezorgd over het kopen van een ander karkas of glas :), reizen naar verschillende interessante plaatsen ... en zodat mijn ellendige ogen de tijd hebben om genoeg van de schoonheid te zien .

  • Oleg

    Ik denk dat ik de reden voor de schulden heb begrepen:
    1. Voor de fabrikant een aantrekkelijker aantal megapixels, dat is begrijpelijk.
    2. Nu de eis voor de camera om de hoogste kwaliteit kant-en-klare jpg-foto aan de uitgang te geven. En zodat de gebruiker geen omkijken heeft naar filters. Die. als je een soort filter moet toepassen om de schijnbare kwaliteit van de foto te verbeteren, dan moet de camera het zelf doen en het niet aan de gebruiker overlaten. Hier ontving hij een matrix van waarden 10 * 10. Natuurlijk zijn er slechts 100 bytes aan initiële informatie, en wie ze nodig heeft, is onbewerkt. En wie een voltooide foto nodig heeft, dan zal de camera de echte resolutie met 2 * 2 \u4d 10 keer verhogen door de ontbrekende pixels (schuld) te interpoleren, dan zal het scherpte, correcte kleuren en iets anders toevoegen. Het eindresultaat is een foto van de best zichtbare kwaliteit. Ja, als je een 10x5 foto correct maakt van een 5 * 1 matrix, dan zal er geen overdreven informatie in staan, maar het zal er echt slechter uitzien. Die. voor mezelf concludeerde ik dit, uit de pixels die op de camera zijn geschreven 4/XNUMX zijn echt, en de rest is geïnterpoleerd. Misschien is dit niet slecht, maar de zichtbare kwaliteit is belangrijk voor mensen, en hoe deze daadwerkelijk wordt verkregen, genomen of geïnterpoleerd, is voor hen niet belangrijk.

    • Roman

      Niet begrepen. Maak een RAW-afbeelding, verklein deze met de helft en schaal deze vervolgens op naar de oorspronkelijke grootte. En vergelijk dan de gedebayeriseerde gezwollen pixels met je eerlijke pixels. Het voorbeeld is niet helemaal correct, maar er kunnen toch bepaalde conclusies worden getrokken.

      Het Bayer-filter is een slimme technische oplossing waarmee u het gebied van de matrix optimaal kunt benutten. Een "eerlijke beslissing" is om een ​​vierkant te nemen, er drie R, G, B-sensoren in te plaatsen (één hoek leeg te laten), alles te middelen tot één pixel en een beeld te krijgen met zijden van 4000x3000 uit een 2000x1500 pixelmatrix. Het is voldoende om nog een groene sensor toe te voegen aan de "lege" hoek en we krijgen een "extra" 60% van de helderheidsinformatie (de bijdrage van het groene kanaal is 60%, 30% - rood, 10% - blauw). Je kunt het gewoon weggooien, of je kunt het "mixen" met behulp van een matje. transformaties (complexer dan eenvoudige lineaire of zelfs kubische interpolatie) naar het beeld, waardoor een veel hogere helderheidsresolutie wordt verkregen.

      • Oleg

        >>Neem de afbeelding verkregen uit RAW
        Waar te krijgen? Elke converter geeft al verwerkt.

        http://arttower.ru/wiki/index.php?title=%D0%A4%D0%B8%D0%BB%D1%8C%D1%82%D1%80_%D0%91%D0%B0%D0%B9%D0%B5%D1%80%D0%B0
        Hier een foto van een gans. Het is als het originele object. Ze hebben er een Bayer-matrix van gemaakt, d.w.z. wat zou de matrix zijn van een ideale camera met een ideale lens. Vervolgens werd schuld op deze matrix toegepast, d.w.z. zoals een camera zou doen. De resulterende foto is niet gelijk aan het origineel! Niet gelijk! Als de fotik eerlijke rgb-pixels had, dan zou de originele afbeelding zonder enige d-tions zijn geworden. En dus is dit een simpele vervaging, die zichtbaar is bij het vergelijken van de originele en uiteindelijke foto's van de gans.
        Ja, d-tion is waarschijnlijk een iets complexere transformatie dan eenvoudige lineaire of kubische interpolatie, maar dit betekent niet dat het geen interpolatie is. D-tion is een echte interpolatie. Van de wiki:
        Interpolatie, interpolatie - in computationele wiskunde, een manier om tussenliggende waarden van een hoeveelheid te vinden uit een bestaande discrete reeks bekende waarden.
        Het is.

        • Roman

          > De resulterende foto is niet gelijk aan het origineel!
          Beweert iemand anders?

          Als je "eerlijk" handelt, zoals je vraagt, dan moet je één van elke set van vier pixels verblinden, en niet vier, zoals het debayerization-algoritme doet. Hierdoor wordt je afbeelding twee keer zo klein in breedte en hoogte. En als je het vergroot om overeen te komen met de grootte van de originele afbeelding, dan zal het resultaat na debayerisatie er VEEL beter uitzien, omdat het is verkregen met behulp van de informatie die je voorstelt weg te gooien.

          Met het Bayer-filter kun je de lichtgevoelige elementen rangschikken in de vorm van een raster, het gebruik van twee groene pixels in plaats van één verhoogt de resolutie en geeft extra informatie voor een betere overdracht van groentinten (en indirecte helderheid).

          Je kunt elementen op elkaar schikken, er zijn zulke matrices. Golven van verschillende lengte dringen door tot verschillende dieptes, dus je kunt drie keer meer informatie uit één "geometrische pixel" halen, maar ook daar is niet alles vloeiend. Het is mogelijk om de lichtstroom in drieën te splitsen en het licht op drie verschillende matrices te richten, maar dit is duur en omslachtig.

          • Oleg

            Als je bijna elke foto maakt (vooral lage resolutie) en de resolutie 2*2 keer verhoogt door bilineaire interpolatie, zal het er ook VEEL beter uitzien zonder het 4e kanaal. Maar dit is geen reden om dit bij alle bestanden te doen door ze met 4 te vergroten! keer.
            Ja, zoals ik hierboven schreef, lijkt de eis voor camera's nu deze te zijn: de camera moet een afgewerkte jpg-foto van de hoogst mogelijke kwaliteit produceren, nadat hij alle mogelijke filters zelf heeft gedaan. De grootte van de foto maakt niet uit. Hoe het wordt verkregen uit echte of overdreven pixels is niet zo belangrijk.

          • Vadim

            Hier is iets dat Oleg op geen enkele manier kan begrijpen, hoe enkelkanaals (monochrome) pixels verschillen van meerkanaals (kleur) pixels. En je kunt er niets aan doen...
            -
            Interpolatie als middeling heeft er dus niets mee te maken. Debairisatie is geen middeling, maar het verkrijgen van een meerkanaals pixel uit een groep monochrome pixel.
            -
            In dit geval is het natuurlijk noodzakelijk om alle mogelijke combinaties van groepen te gebruiken, aangezien dit geeft meer ECHTE informatie dan elke monochrome pixel slechts één keer te gebruiken en vervolgens op te schalen.
            -
            En die gans is dom... Mensen namen een afbeelding van een reeks RGB-pixels, knippen ze terug naar monochroom, dat wil zeggen. ze gooiden 2 kanalen eruit (2/3 van de informatie), en dan zeggen ze: "Zie je, het beeld is vernederend." NATUURLIJK is het vernederend, er is nog maar een derde van de informatie over! En alleen dankzij debairization kan deze afbeelding nog steeds worden bekeken.

          • Oleg

            Ja, mensen gooiden 2/3 van de informatie weg. Welnu, de camera neemt ook geen 2/3 van de informatie op, laten we zeggen dat de groene component van het licht dat de rode of blauwe cel raakt gewoon verdwijnt. Alles klopt met de gans.
            En wat is volgens jou de juiste manier om een ​​voorbeeld van een gans te maken? Denk voor jezelf dat er een foto is van een gans, zeg 100 * 100 * 3 = 300 bytes, de Bayer-matrix zal slechts 100 bytes bevatten. Hoe je niet uit 100 bytes verdraait, je krijgt niet dezelfde 300 terug. Niet eens? geen probleem, laten we de gans maken zoals jij dat wilt. Leg uit hoe.

          • Vadim

            Weggooien en niet weggooien zijn twee verschillende dingen. Deze monokanaalpixels dragen informatie over slechts één kanaal. Maar ze houden niet op pixels te zijn. En er werden ons geen specifieke pixels beloofd. Ze beloofden pixels - ze gaven pixels. Maar wat zijn deze pixels en hoe verschillen ze van de schermpixels, dankzij jou hebben we het ontdekt en tot in detail "gekauwd".

          • Oleg

            Over het algemeen wel. Nergens staat dat dit driekanaalspixels zijn. Als de terughoudendheid van overdreven informatie in het bestand, je een lagere resolutie in de fotik kunt zetten en daardoor een eerlijke vertaling van Bayer-pixels naar rgb krijgt, dan laten de fabrikanten de keuze aan de gebruiker. Waarschijnlijk tevergeefs laster ik ze.
            Nou, dan kan de resolutie van monitoren ook 3 keer meer verticaal worden geschreven, ook daar heeft niemand een rgb-pixel beloofd :).

        • Vadim

          Camerapixels en schermpixels zijn als tegels. Er is goedkoper, er is duurder, er is meer, er is minder. Maar zowel dit als dat zijn tegels, en dit en dat zijn pixels.
          Omdat de pixels van de cameramatrix enkelkanaals (monochroom) zijn, bevatten ze drie keer minder informatie dan schermpixels. Ze zijn niet gelijk. Maar het zijn pixels. Eerlijk. Echt.
          -
          Wat is de gemakkelijkste manier om uit te leggen?

          • Roman

            Ik weet het niet. Een persoon gelooft koppig dat de fabrikanten hem bedriegen. Zoals, een Joods maçonnieke samenzwering, iedereen verdubbelt dom de foto, verscherpt en verkoopt het als een echte. Dus ik zal hem van streek maken, in JPEG wordt RGB omgezet naar YUV - een luminantiekanaal en 2 kleurverschillen. De hele luminantiecode is gecodeerd en de kleurverschilcodes blijven over met twee pixels van de vier. En dit is na debayerisatie! Dwaas mensen, dwaas...

          • Oleg

            Ik weet zeker dat het op basis van de Bayer-matrix 10 * 10 onmogelijk is om het originele beeld 10 * 10 * 3 op welke manier dan ook nauwkeurig te herstellen, inclusief d-tion. De uiteindelijke foto zal waziger zijn dan het origineel en de vrijmetselaars hebben er niets mee te maken, pure wiskunde. Ik weet niet hoe JPEG codeert, ik zal niet beweren (maar ik dacht altijd dat er iets in een Fourier-serie was vastgelegd). Maar uw logica is dit, laten we 200% opgeblazen pixels aan de afbeelding toevoegen, hoe dan ook, sommige gaan verloren na JPEG-compressie. Ik merk op dat JPEG altijd een verslechtering van de kwaliteit van de foto is (gezien in contrasterende foto's), en na JPEG zullen niet alleen overdreven, maar ook echte verloren gaan!
            Het bovenstaande voorbeeld met een gans is zeer onthullend. Of ben je Roman het ook niet met hem eens? Laten we het voorbeeld van de gans maken zoals u dat wilt, en ervoor zorgen dat we niet eindigen met de originele beeldkwaliteit.

          • Vadim

            :)))
            Er is geen "originele foto" van een gans. Er is een gans :). Dit is het ORIGINELE ONDERWERP. We kunnen nooit het perfecte plaatje krijgen. We zagen de contour - we willen delen van het lichaam zien; we zagen lichaamsdelen, we willen veren zien; we hebben veren gezien, we willen elke "villus" onderzoeken; we zagen elke "pluis", we willen elke teek erop zien zitten, enz. Er is geen limiet aan perfectie.
            -
            Dus de GUS (en niet zijn foto) is gefotografeerd met een camera op een matrix met een Baeriaans rooster. Dit is de ORIGINELE AFBEELDING.
            -
            Informatie bij het fotograferen wordt er niet minder op. Er is precies zoveel van als dit type matrix in eerste instantie fysiek in deze camera kan krijgen met deze instellingen en deze opnameomstandigheden. Die. enkele monochrome pixels.
            Nogmaals, monochroom betekent niet grijswaarden. Het is alleen zo dat elke pixel informatie over één kanaal bevat (in dit geval rood, blauw, groen, groen nr. 2).
            -
            Als we in eerste instantie een meerkanaals (bijvoorbeeld meerlaagse) matrix hadden, en om de een of andere reden een Baer-raster er bovenop zouden hangen, zouden we natuurlijk ongeveer 2/3 van de informatie verliezen. Maar we zijn niets verloren, we hebben in eerste instantie een minder perfecte sensor. Wat je ook met hem doet, hij zal niet meer informatie voor ons "opgraven".
            -
            Dan gaat de oorspronkelijke informatie ook nergens heen: het wordt geanalyseerd, geïnterpreteerd en omgezet in meerkanaalspixels die begrijpelijk zijn voor het beeldscherm. U kunt dit in één keer doen (elke monochrome pixel wordt één keer gebruikt), u kunt het in meerdere passages doen (alle mogelijke combinaties van groepen van 4 aangrenzende pixels worden beschouwd + mogelijk grotere groepen en onregelmatig van vorm). Hoe meer passes - hoe meer kansen om het maximale uit de beschikbare informatie te persen, hoe groter de kans dat het resulterende beeld aan de verwachtingen zal voldoen. Maar nogmaals, de hoeveelheid initiële informatie verandert niet.

          • Oleg

            >>Er is geen "originele foto" van een gans. Er is een gans...
            Niet correct. Een levende gans kunnen we niet oneindig gedetailleerd beschrijven, dat klopt. Maar we stelden ons een abstracte gans voor die uit vierkanten bestaat. Het is alsof we geen foto van de gans zelf maken, maar een foto van een gans. Laten we zeggen dat we een foto hebben van een gans 100*100*3. Een ideale camera met een ideale lens met een eerlijke matrix van 100 * 100 * 3 het maken van zo'n foto van een gans zal uiteraard het originele beeld van een gans aan de uitgang geven. Een ideale camera met een Bayer-matrix van 100 * 100 * 1 geeft een Bayer-matrix, waaruit door middel van detietransformaties niet de originele foto van de gans wordt verkregen, maar een meer onscherpe foto. Zoals in die link te zien is.
            >>Informatie wordt niet kleiner tijdens het fotograferen. Er is precies zoveel van als in het algemeen fysiek dit type matrix in eerste instantie kan krijgen
            Ja. Deze matrix kan van het object bijvoorbeeld 10*10=100 bytes aan informatie ontvangen, hij wordt niet kleiner, omdat wij gooien niets weg. Het wordt groter, we voegen 200 bytes toe. Alsof we echt 300 bytes van het object hebben ontvangen, maar in feite maar 100.
            Kijk, we moeten 1 pixel van een enkelkanaals Bayer-matrix omzetten in een 3-kanaals matrix. Laat het een groene pixel zijn. Maar we kennen de waarde van de rode of blauwe kleur van het object op de plaats van deze groene pixel fysiek niet. De matrix heeft deze informatie niet verwijderd, afgesneden. Waar we het kunnen krijgen, nemen we het van een naburige pixel, naïef in de veronderstelling dat de kleurwaarden van aangrenzende pixels ongeveer vergelijkbaar zijn. Maar dit is helemaal niet zo. Het bronobject is bijvoorbeeld een felgele (rood+groen) stip van 1 pixel op een groene achtergrond. En dit punt viel volledig in deze 1 enkelkanaals groene pixel. In aangrenzende pixels is er geen informatie over de rode component, er is alleen informatie over de groene achtergrond. De-tion geeft ons deze groene stip. Terwijl een eerlijke driekanaalsmatrix zal zien dat de stip een rood kanaal heeft, en als resultaat krijgen we de gele kleur van de stip.

          • Denis

            “Het originele object is bijvoorbeeld een felgele (rood + groen) stip van 1 pixel groot op een groene achtergrond. En dit punt viel volledig in deze 1 enkelkanaals groene pixel. Er zal geen informatie zijn over de rode component in aangrenzende pixels "- je gedachten bevestigen slechts eens te meer de onwetendheid van het materiaal :)
            Deze situatie is onmogelijk, omdat er zit ook een speciaal filter voor de matrix.

          • Oleg

            Ze zeggen dat op sommige modellen het anti-aliasingfilter niet voor de matrix zit. En waar heb je het idee vandaan dat de onscherptestraal van dit filter groter is dan de pixelgrootte? Misschien vervaagt het met 0.1 pixels, en dan kan een heldere stip ter grootte van een pixel heel goed zijn.

          • Denis

            Camera's zonder filter - anderhalve modellen. Bovendien wordt de afwezigheid van dit filter gepresenteerd als een hulpmiddel voor professionals, mensen die weten waarom ze het nodig hebben.
            En wat betreft de mate van vervaging, het lijkt de moeite waard om het te vervagen zodat het aangrenzende pixels raakt. Zelfs als het 0.1 pixels is, betekent dit dat een deel van de informatie al op de buren valt. In de praktijk zijn er meer. Ik herhaal nogmaals, bestudeer het materiaal voordat ik conclusies trek over wallen en interpolatie.

            PS Arkady, verwijder mijn soortgelijke opmerking hierboven, hij werd op de verkeerde plaats geciteerd, alles is verhuisd.

    • Roman

      Een andere "eerlijke optie" is om het aantal pixels op de matrix te vergroten, waardoor hun lineaire afmetingen kleiner worden. Maar hier lopen we tegen een aantal problemen aan. Geluiden nemen toe (vanwege de dichte opstelling van elementen op de matrix, is hun verwarming groter, worden er meer vervormingen in de metingen geïntroduceerd). Problemen met diffractie beginnen (we schreven hierover iets hoger). Gevoeligheid neemt af, tk. het aantal fotonen van de lichtbron is nog steeds eindig, en naarmate de grootte van het lichtgevoelige element afneemt, zal het aantal fotonen dat erop valt vanuit dezelfde scène afnemen. Dit is de weg naar nergens.

      • Oleg

        >>Een andere "eerlijke optie"
        Niet de zoveelste, maar de enige eerlijke optie om de resolutie te verhogen is om het aantal pixels te vergroten.
        >> Dit is de weg naar nergens.
        En de fabrikanten van matrices weten het niet eens. Het aantal pixels op de matrix wordt steeds groter.

        • Roman

          > En matrixfabrikanten weten het niet eens. Het aantal pixels op de matrix wordt steeds groter.

          Als tegelijkertijd het gebied van de matrix toeneemt, is dit redelijk gerechtvaardigd. En voor de rest werkt gewoon marketing vooral. Oké, naarmate de technologie verbetert, is het geluidsprobleem op de een of andere manier opgelost. Maar niemand heeft de diffractie nog opgeheven en de resolutie van de optica moet overeenkomen met de resolutie van de matrix, anders heeft de verhoging geen zin.

  • Roman

    >> Ik weet zeker dat het vanuit de Bayer matrix 10 * 10 onmogelijk is om op welke manier dan ook, de originele afbeelding 10 * 10 * 3 nauwkeurig te herstellen, inclusief d-tion.

    Dit is absoluut onbetwistbaar. ALS er een ideale matrix zou zijn, waarvan elke fysieke pixel een afbeelding met drie componenten zou produceren (en die bestaan, schreef ik al, maar ze zijn verre van ideaal), dan zouden we als resultaat van het verwijderen van informatie uit deze matrix krijgen een betere beeldkwaliteit. Maar in dit stadium kunnen we alleen het verlichtingsniveau van de sensor bepalen en daarop een soort spanning vormen, die we vervolgens digitaliseren. Als je een matrix van 4000x3000 neemt en deze niet afdekt met kleurenfilters, krijg je je eerlijke 12MP monochrome afbeelding. Als we ook nog een Bayer raster van kleurfilters bovenop de matrix plaatsen, dan krijg je ook informatie over de kleur. We zullen een deel van de helderheidsinformatie verliezen als gevolg van filters. Maar nogmaals, deze array zal meer informatie bevatten dan een array van gemiddeld 2000x1500 pixels.

    • Oleg

      >> deze array zal meer informatie bevatten dan een array van 2000x1500 gemiddelde pixels
      De Bayer-matrix 4000x3000 bevat 12 MB aan informatie. Om eerlijk te zijn, om het te comprimeren tot 2000x1500 RGB-foto's, zal het 9 MB aan informatie zijn, d.w.z. verlies van 25% (d.w.z. in plaats van 2 groene kanalen, slechts 1). En als je een de-tie maakt en deze uitrekt tot 4000x3000 RGB-foto's, dan krijgen we 36 MB aan informatie. Die. of 25% verliezen of met 200% opblazen. In principe kunnen we deze 200% op elk moment opblazen, zelfs in realtime, direct bij het bekijken van een foto.
      Maar 12 megapixels is voor een marketeer veel aantrekkelijker dan 3 megapixels. Ze willen er 12 schrijven. Maar marketeers kunnen de foto ook niet eerlijk vertalen, want. als de camera 12 megapixels aangeeft, dan kan hij bij de uitvoer geen 3 megapixel foto produceren. Daarom worden echte enkelkanaals 12Mpix op de fotik geschreven en is de uitvoer dezelfde 12 maar gedeeltelijk opgeblazen driekanaals. 12=12 en alles klopte en klanten hebben geen vragen.

      • Roman

        > Bayer-matrix 4000x3000 bevat 12 MB aan informatie

        4000x3000x14 bits = 21 MB (niet langer 12)

        > In principe kunnen we deze 200% op elk moment opblazen, zelfs in realtime, direct bij het bekijken van een foto

        Heb je ooit RAW verwerkt? Hoeveel een fatsoenlijke converter opent het en "windt" het aandacht?

        In alle andere opzichten wil je er niets van begrijpen, dus ik zie het nut niet eens in om mij van het tegendeel te overtuigen.

        • Oleg

          De converter werkt precies zo lang als de hardware je toestaat. Fotik maakt het veel gemakkelijker en sneller. In computers is het percentage krachtiger, hier is het koelere algoritme. Morgen zullen ze de computer 100 keer sneller maken, programmeurs zullen een filter nog harder schrijven en de computer zal een paar seconden hetzelfde denken en de foto 1% aantrekkelijker maken. Dit is geen indicatie.
          >> In alle andere opzichten wil je niets begrijpen, dus ik zie niet eens het nut in om je anders te overtuigen
          Wat wil je me overtuigen? Het feit dat de-tie geen interpolatie is? Is het dat de 10 * 10 Bayer Matrix informatie kan ontvangen van een object van meer dan 100 bytes? Of is het dat je van 100 bytes aan echte informatie 300 bytes aan echte informatie kunt maken? Waarin?

        • Denis

          Roman, ja het is nutteloos om te bewijzen :)
          Laat een persoon foto's 4 keer verkleinen en rustig slapen, denkend dat hij niets verliest en dit bespaart alleen ruimte op de harde schijf :) En we zijn dom, we zullen foto's op volledige grootte blijven maken, waarin een derde van de informatie is uitgevonden :)

  • Roman

    > Ik weet niet hoe JPEG codeert

    Maar interesse tonen. Laten we beginnen met de conversie van RGB naar YUV. We slaan het helderheidskanaal volledig op, we dunnen twee kleurverschilkanalen uit. U kunt de helft van de pixels van elk U- en V-kanaal verwijderen en het verschil is niet zichtbaar voor het oog. Als gevolg hiervan werd 33% van de informatie relatief pijnloos weggegooid. In de video gooien ze trouwens nog meer weg - ongeveer 50%.

    Nou, het is nog leuker.
    De ontvangen informatie is verdeeld in blokken, elk afzonderlijk gecodeerd. Elk blok wordt onderworpen aan een FFT. In plaats van een reeks waarden voor elke pixel, krijgen we een reeks frequenties. Daar snijden we de bovenste frequenties af, afhankelijk van de compressieverhouding, waardoor het beeld steeds grover wordt. En pas dan passen we de daadwerkelijke compressie toe volgens de Huffman-methode.

    • Vadim

      Dus ik, Roman, las je post opnieuw en dacht dat de kwesties van interpretatie en transformatie van informatie grenzen aan filosofie :).

      Bijvoorbeeld:
      - Ik neem mijn .nef-bestand met een volume van 14 bytes;
      - Ik probeer het te comprimeren in WinRAR, beste compressie - ik krijg 14 582 483;
      - oke, het resultaat is niet geweldig, ik open .nef in Photoshop in sRGB, 8 bits / kanaal (hoeveel hadden we daar?) En sla het op in .tif zonder compressie, interleaved, zonder een kleurprofiel, ik krijg 36 bytes;
      - vergelijkbaar, maar ik gebruik LZW (lossless) compressie - 18 bytes;
      - vergelijkbaar, maar in plaats van LZW druk ik op .tif met WinRAR - 13 bytes (dit is waar de straatmagie begint!).

      Nu probeer ik de afbeelding voor te bereiden om af te drukken. Om alles transparant te maken, converteer ik het in Photoshop geopende RAW-bestand handmatig naar sRGB, 8 bit / kanaal naar CMYK, sla het op in .tif zonder compressie - 48 bytes.
      Evenzo, maar met LZW - 30 bytes.
      Evenzo, maar ongecomprimeerd .tif ik druk op WinRar - 24 bytes.

      Wat interessant is: in feite hebben we niets bijzonders gedaan met de oorspronkelijke informatie. In het eerste geval is het geconverteerd voor een adequate weergave op het scherm. De tweede is om te printen. Ik durf niet eens te beoordelen waar het echt is, waar het opgeblazen is. Ik zou zeggen dat dit verschillende avatars zijn met dezelfde informatie (behalve het verlies bij het converteren naar andere kleurprofielen).

      De vraag blijft: hoe kan een opgeblazen 3-kanaals .tif MINDER ruimte innemen dan een op dezelfde manier verpakt .nef? Er is minder ECHTE informatie?

      • Denis

        In RAW heb je niet-gecomprimeerde gegevens uit de matrix, zonder debayerisatie, als je converteert naar TIFF, krijg je een al gedebayeriseerde afbeelding, er zijn al drie keer meer subpixels, daarom weegt het drie keer meer.

        • Vadim

          Het is duidelijk, geen vragen

      • Denis

        Maar al inpakken en comprimeren is een andere vraag, het hangt allemaal af van de algoritmen en acceptabele verliezen. RAR comprimeert bijna geen eenvoudige afbeeldingen, zoals je hebt gezien. Hoogstwaarschijnlijk ontbreekt er iets.

        • Vadim

          De bitness ging verloren, kanalen werden toegevoegd. En toen bleek ineens dat een volwaardig driebandraster, onder de voorwaarde van een competente verpakking van informatie, minder volume kan opnemen dan een slechte, niet-debayed bron.

          En de filosofie is wat wordt beschouwd als de ECHTE hoeveelheid opgeslagen visuele informatie? Bron RAW-formaat? Raster op ware grootte? Welke van de dingen die ik heb beschreven is de ECHTE hoeveelheid informatie, die is GECOMPprimeerd en welke is GEBLOED?
          Het blijkt immers dat dezelfde informatie een ander volume kan innemen, afhankelijk van de manier van presenteren en de gebruiksomgeving.

      • Roman

        Bedenk dat je in feite een afbeelding aan de uitgang van de matrix hebt, gecodeerd op ongeveer dezelfde manier als wordt gebruikt in beeldcompressie-indelingen. Immers, wanneer een deel van de kleurinformatie wordt afgesneden in JPEG, schreeuwt niemand dat ze hem bedriegen? En daar is tenslotte de gemakkelijkste manier om te comprimeren twee keer aan elke kant en dan uitrekken. Ze sleutelen echter aan complexere transformaties.

    • Vadim

      Kortom, ik heb heel hard mijn best gedaan om het idee uit te drukken dat de hoeveelheid nuttige informatie en het volume dat het inneemt twee verschillende dingen zijn.
      -
      En de laatste tijd is het steeds moeilijker geworden om te begrijpen of het in een oorspronkelijke, gecomprimeerde of opgeblazen staat is.

      • Denis

        De gecomprimeerde RAW- en JPEG-bestanden van mijn Nikon D1X nemen bijna evenveel in beslag, daarom fotografeer ik alleen in RAW :) Beide zijn gecomprimeerd, hoewel het duidelijk is dat er meer verliezen zijn in JPEG.

        • Vadim

          In het algemeen bedankt voor een aangenaam en informatief gesprek.

          En het belangrijkste is dat ik hier mijn gedachten over megapixels achterlaat, ik heb tegenwoordig veel mooie foto's gemaakt, waarbij ik aan heel andere dingen dacht :)

      • Roman

        Welnu, op basis van de definitie van de hoeveelheid informatie die van de sensoren wordt gehaald, is er enige waarde. Maar de manier waarop het wordt gepresenteerd kan verschillen. De entropie is lager - de grootte van het bericht is kleiner, het is allemaal informatie. Meer entropie, meer boodschap.

        We kunnen een deel van de informatie verliezen door ons aan te passen aan de eigenschappen van het outputsysteem (monitor) en het waarnemingssysteem (oog). Een monitor kan bijvoorbeeld niet meer dan 8 bits per pixel uitvoeren (meestal). En het oog onderscheidt geen kleurschakeringen in de schaduwen. Enzovoort. Hier neemt de hoeveelheid informatie af en daarmee de omvang van het bericht. Maar door compressie verminderen we de entropie, waardoor de boodschap qua volume hetzelfde blijft. Omgezet naar een formaat van 16 of 32 bits - verhoogde entropie (de beruchte "opgeblazen pixels").

  • Dmitry

    Op de D7100 RAW van 15,6 MP duurt het 20 tot 26 MB. RAW opgenomen zonder compressie. Maar afgaande op hoe het uiteindelijke volume verschilt, wordt compressie nog steeds duidelijk gebruikt, maar zonder kwaliteitsverlies en zonder enige informatie. Helaas bewijst dit maar weer eens dat de structuur van het RAW-bestand voor de fotograaf niets meer is dan een “black box” waar maar een select groepje mee aan de slag kan.

    • Arkadi Shapoval

      Amateurcamera's, waaronder de D7100, ondersteunen geen ongecomprimeerde RAW.

      • Dmitry

        je hebt gelijk wat betreft compressie. echter, zoals vermeld op pagina 67 van de D7100-instructie, is de compressie in mijn geval 20-40%. namelijk "aan", niet "voor". die. ongecomprimeerde RAW moet minimaal 15,6 MP zijn * 14 bits / kanaal * 3 kanalen / 8 bytes / bits = 81 MB. Laten we zeggen 40% compressierollen: 81 * 0,4 = 32,8 MB. en dit is zonder metadata en previews. dat zijn allemaal hetzelfde "donkere bos" blijkt.

        • Arkadi Shapoval

          Alles is heel eenvoudig. Vermenigvuldigen met 3 kanalen is niet nodig.

          • Dmitry

            Ik begrijp niet waarom het niet nodig is om te vermenigvuldigen met 3 kanalen. in totaal geeft de matrix een kleurengamma van 42 bits (d.w.z. 14 bits per kanaal). 42 bits is 6 bytes. die. digitalisering van één pixel (RGB) duurt 6 bytes. die. voor 15,6 megapixels heb je 93,6 MB nodig.

          • Denis

            Dmitry, je hebt het artikel niet aandachtig gelezen, of helemaal niet gelezen. Op een matrix van 15,6 geen full colour megapixels, maar enkelkleurige megapixels. Vermenigvuldigen is dus niet nodig.

  • Dmitry

    Lijkt de truc te hebben betrapt met het manipuleren van gegevens uit de matrix. Als één pixel RGGB is. Welke van de twee fysieke pixels (RGGB + RGGB) kan daadwerkelijk drie pixels krijgen. vanwege de "middens" van aangrenzende cellen (de eerste en derde cellen zijn onafhankelijke afzonderlijke cellen, maar de tweede is de tweede helft van de eerste en de eerste helft van de tweede). voor zo'n model van fysieke pixels heb je de helft minder nodig. bovendien geldt dezelfde werkwijze voor de horizontale en verticale doorgang van het frame. daarom is het fysiek voldoende om 4 keer minder pixels te hebben. dan verandert mijn 15,6 MP in 3,9 MP. en dit is 3,9 megapiskel * 42 bit / pixel / 8 bit / byte = 20,5 MB. Dit komt duidelijk in de buurt van wat we hebben. + metagegevens + voorbeeld.

  • Dmitry

    Om discussies over het onderwerp van een pixel op een matrix verder uit te sluiten, is het drie kleuren of één, heeft Nikon een vraag gesteld aan de ondersteuningsdienst:

    ” Dmitro Tishchenko: Goedemiddag, Elena! Ik ben geïnteresseerd in een ietwat vreemde vraag over de D7100-matrix.
    Dmitro Tishchenko: Volgens de gebruikershandleiding is de grootte 24 megapixels. De vraag is: wat bedoelt de fabrikant met pixel? Is in dit geval een pixel een volwaardige matrixcel (RGGB) of een aparte kleur (RGGB=3 pixels)?
    Elena: Een volwaardige cel”

    Dat wil zeggen, één pixel is een driekleurenpixel in kleur.

    • Denis

      "Dat wil zeggen, één pixel is een driekleurenpixel in volledige kleuren" - dit is onzin, de persoon die antwoordde is duidelijk niet in het onderwerp. Lees in ieder geval Wikipedia voordat je zulke vragen stelt en nog meer om zulke antwoorden te geloven. Alles is al lang herhaaldelijk beschreven en geschilderd.
      Het RawDigger-programma sprong in de commentaren - zij is het die een einde kan maken aan de discussie over het onderwerp van een of drie kleuren. Open een willekeurig RAW-bestand, ga naar de instellingen, schakel 2x2 uit en kijk in de RAW-composietmodus. Dit zal zijn wat de matrix zag, zonder debayerisatie; Bij vergroting is de Bayer-array duidelijk zichtbaar.

      • Dmitry

        Dit is de ondersteuningsreactie. Ik heb ze ook een vraag gesteld op zoek naar hun eigen antwoord met betrekking tot de duidelijke mismatch in de hoeveelheid ontvangen gegevens. het antwoord kwam neer op de nabijheid van gegevensverwerkingsalgoritmen. een beetje hoger, stelde ik voor dat de uiteindelijke pixels kunnen worden verkregen met een veel kleiner volume van de initiële cellen van het Baer-filter (niemand verbiedt maritz-fabrikanten om hier niet over te praten - we zijn nog steeds geïnteresseerd in de uiteindelijke grootte van de matrix in pixels (RGB)). met RawDigger zal ik proberen om bovendien de aangegeven truc uit te voeren (hoewel ik gisteren de gedetailleerde metadata van een van de RAV's heb bestudeerd. Er werd ook gesproken over pixels en deze kwamen overeen met de resolutie van het uiteindelijke beeld, of de echte beeldresolutie moet ook worden verdeeld tegen 3). Ik vraag me af of het programma me het totale aantal cellen kan laten zien waaruit de kleur bestaat.
        http://ru.wikipedia.org/wiki/%D0%9F%D0%B8%D0%BA%D1%81%D0%B5%D0%BB%D1%8C - geeft als antwoord dat het een kleur is.
        http://ru.wikipedia.org/wiki/%D4%E8%EB%FC%F2%F0_%C1%E0%E9%E5%F0%E0 - we hebben het niet over pixels, maar over elementen (filters).

        • Denis

          Na het uitschakelen van debayerization zal RawDigger alleen laten zien wat de matrix heeft waargenomen (trouwens, je kunt daar de weergave van inefficiënte pixels inschakelen, mijn Canon 350D heeft een zwarte balk aan de linker- en bovenkant). Je kunt de afbeelding vergroten, naar de instellingen gaan en het vakje 2x2 aanvinken, je zult duidelijk zien hoe debayerisatie werkt. De resolutie van de afbeelding verandert niet, de kleuren van de pixels veranderen van één kleur naar full-color.
          Volgens de link is er zo'n "Pixel wordt ook ten onrechte een element van een lichtgevoelige matrix genoemd (sensel - from sensor element)"
          Maar het aantal zintuigen zal gewone stervelingen niets vertellen (dit artikel is hiervan het bewijs - niet iedereen begreep de betekenis), daarom worden ze megapixels genoemd, in de verwachting dat gebruikers kunnen begrijpen welke resolutie de foto zal hebben ( al deze keuken met debayerization 99% van de fotografen maakt het niet uit).

          • Dmitry

            RawDigger - probeerde het in meer detail te bestuderen. En heb het verder uitgezocht. Ja, op de matrix hebben we het eigenlijk over subpixels (elke kleurcomponent afzonderlijk). Ik kreeg ze de benodigde 15,6 megapixels. Die. 15,6 megapixels * 14 bits / subpixel + gedeeltelijke lossless compressie (met 20-40%) = 18,7-24,9 MB + 90-95 kB preview + metadata. wat erg lijkt op de waarheid. MAAR! Na conversie naar dezelfde TIFF zonder de kleurkanalen op te slaan, krijgen we dezelfde 15,6 MP, maar na debayerisatie. MAAR! Met de Bayer-array kunt u veilig en eerlijk bijna dezelfde 15,6 megapixels interpoleren. Op welke manier?!
            Bayer filterfragment:
            RGRGRG...
            GBGBGB…
            RGRGRG...
            GBGBGB…
            ...
            Vormt pixels (RGB) van subpixels (de eenvoudigste en duidelijk domme optie):
            RG+GR+RG
            GB BG GB

            GB+BG+GB
            RG GR RG

            RG+GR+RG
            GB BG GB

            die. van een 4x4 array heeft 9 volwaardige "eerlijke" pixels.
            om de ontbrekende rijen te compenseren zijn er extra pixels. Dus het lijkt op de waarheid?

            • Alexey

              lees mijn antwoord hieronder!
              Mijn mening is dat een EERLIJKE pixel de kleurcomponenten zijn waarvan GEEN DEELNAME aan ANDERE pixels!

              En hier worden we gewoon voor de gek gehouden! Zuiver water interpolatie.

  • Teis

    IMHO, op de een of andere manier raakte iedereen gefixeerd op gekleurde pixels en miste een moment.
    De camera met de geclaimde 12 megapixels maakt eigenlijk een 12 megapixel zwart-witfoto. Debayerization is in wezen het herstellen van kleuren voor een afbeelding van twaalf megapixels. Het creëren van één kleurpixel op vier zou nog steeds leiden tot een verslechtering van de details van het beeld.

    • Alex

      Ik vraag me af of het mogelijk is om de originele zwart-witafbeelding programmatisch te herstellen?

      • Vv

        RawDigger om u te helpen

    • Andreykr

      Een camera met 12 megapixels geeft geen zwart-wit opname bij 12 megapixels, omdat de subpixels bedekt zijn met verschillende kleurfilters, het resultaat eruitziet als een raster en op de een of andere manier moet worden gemengd (het helpt niet om de helderheid te corrigeren van de kanalen verandert elk kleurenfilter de helderheid van verschillende tinten), dat wil zeggen dat debayerisatie nog steeds nodig is. En uiteindelijk heb je te maken met lawaai (de gevolgen van debayerization). Waarom? Want er is een verschuiving. Op dit punt hebben we geschoten met een rood filter en met een verschuiving naar rechts - met een groene. Maar dit zijn verschillende punten van het beeld. Als we ze combineren, verliezen we de resolutie of introduceren we ruis.
      Er zijn onderzoekers die kleurenfilters uit de matrix hebben verwijderd en zo ECHT zwart-witfoto's hebben gekregen. Google: de kleurenfilterarraylaag van een DSLR-sensor krassen voor scherpere zwart-witfoto's. Na een dergelijke manipulatie is debayerisatie niet langer nodig. Je kan het zelf doen.

  • Alexey

    En de mijne niet! Ik heb 600d - 18.1 megapixels en zoals 17.8 echte megapixels.

    Stel je voor dat de lens zo scherp stelde dat de korrels van het beeld in de grootte van één subpixel vielen.
    En zou het frame tegen de lucht hebben geraakt - draad.

    ze zou een zwarte vlek langs een rij subpixels lopen. bij het debaeren krijgen we een verloop van 4 pixels dat vloeiend verandert van de kleur van de lucht naar de helft van de helderheid van de kleur van deze lucht en weer terug naar de kleur van de lucht. maar we zouden nooit een zwarte pixel krijgen, omdat elke debay-pixel een paar zwarte 100% en een paar lichte 100% heeft.
    bij debaering met een stap van +2, dat wil zeggen pixelvorming zonder twee subpixels van het vorige vierkant op het nieuwe te leggen, zouden we een strikte, zelfs 75% gearceerde pixel krijgen waarvan de buren de kleur van de lucht hebben en het is 75% donkerder dan zijn buren. Dit is in het ideale geval, maar zoals je weet zijn er niet zulke scherpe lenzen en kan een gewone walvislens bij diafragma f11 maar 2.5 subpixels dekken met zijn maximale scherpte. hier krijgen we bij het debaeren met 17 megapixels een nog meer uitgesmeerde gradiënt. Maar als we bij 4.5 megapixels gaan, krijgen we een 100% zwarte pixel op de plaats waar de draad passeert en 100% de kleur van de lucht eromheen. We hebben de gebruikelijke lineaire benadering. wanneer het aantal echte pixels horizontaal en verticaal wordt verdubbeld en de ontbrekende eenvoudig worden verkregen door interpolatie. Het probleem wordt gecompliceerd door het feit dat ik in Photoshop geen 4.5 megapixels kon halen, maar met een duidelijk gedefinieerde draad in de afbeelding!

    Daarom is de vraag - niemand is programma's tegengekomen die een tiff kunnen maken met echte 4.5 pixels van een rabbijn die onderling geen gemeenschappelijke subpixels hebben?

  • Oleg

    Nou, eigenlijk betekende een matrixpixel altijd een groep gevoelige elementen waaruit de uiteindelijke pixel wordt gevormd. Trouwens, de laatste pixel wordt ook niet met één stip op het scherm weergegeven, maar met dezelfde groep veelkleurige stippen

    • Arkadi Shapoval

      Ja, maar als de monitor 1024 * 720 pixels heeft, dan begrijpt iedereen dat 1024 * 720 * 3RGB-componenten verantwoordelijk zijn voor de weergave (dat wil zeggen met een triade per echte pixel), maar hier is de situatie anders.

      • Oleg

        welke andere? de essentie is hetzelfde, om een ​​afbeelding te maken die overeenkomt met de aangegeven pixels. En trouwens, niet altijd op een 3RGB-monitor

  • Victor

    Er is nog iets lastigs aan de Bayer RGBG-matrix: aangezien in de bayer het aantal groene pixels twee keer zo groot is als de rest, heeft het groene kanaal de hoogste gevoeligheid, de breedste DD en het laagste ruisniveau. Dit zorgt voor bepaalde problemen met de meetnauwkeurigheid, die soms kunnen worden opgelost met een lastige manier om de BB handmatig in te stellen, rekening houdend met het verschil in de gevoeligheid van de bayer per kanaal - de zogenaamde. UniWB
    Over het algemeen is het jammer dat de fabrikanten van de CPC de RGBW-matrix hebben verlaten: https://ru.wikipedia.org/wiki/RGBW , waarbij één pixel helemaal geen filter heeft, d.w.z. "wit". Zo'n matrix vormde natuurlijk bleker - "film" -kleuren, maar met belichtingsmeting, gevoeligheid, ruis en DD zou het veel beter zijn.

Voeg een reactie

Auteursrecht © Radojuva.com. Blog Auteur - fotograaf in Kiev Arkadi Shapoval. 2009-2023

Engelse versie van dit artikel https://radojuva.com/en/2013/08/ice-cube-m/?replytocom=35841

Spaanse versie van dit artikel https://radojuva.com/es/2013/08/ice-cube-m/?replytocom=35841