• WhiteRaver
  • Registratie: Oktober 2005
  • Niet online
Ik ben bezig met een afstudeeronderzoek en loop tegen een probleem aan. Voor het onderzoek wil ik van gemaakte foto's (met mijn Canon 650D in RAW) het histogram omzetten naar harde cijfers. Dan kan ik daarna deze getallen in een spreadsheetprogramma (Excel) importeren en kan ik verder met het onderzoek.

Het programma RawDigger kan wel bepaalde waarden exporteren naar een *.csv-bestand. Het rare aan dat programma is dat de getoonde histogrammen er anders uitzien dan wanneer het wordt bekeken op de camera, in Photoshop of in Nomacs (zie onderstaande screenshot). Het lukt mij dan ook niet om de correcte histogrammen na te maken met behulp van die geëxporteerde data uit RawDigger.

Kan iemand mij verder helpen om histogramwaarden naar waarden om te zetten?

Afbeeldingslocatie: http://static.tweakers.net/ext/f/exQusWhW0QWvebT5O3sUNEVz/full.jpg
Screenshot voorbeeld van de histogramverschillen tussen de verschillende programma's.
Van links naar rechts RawDigger, Photoshop, Nomacs.


Of kan ik beter in het Client Software Algemeen forum zijn in verband met Excel?

[ Voor 15% gewijzigd door WhiteRaver op 10-12-2015 09:18 . Reden: Screenshot voorbeeld histogramverschillen toegevoegd. ]

Graag gedaan.


  • Nic
  • Registratie: April 2005
  • Laatst online: 08:51

Nic

Vrij

Bij RawDigger zie je het al: de x-as is logaritmisch. Bij de anderen is die lineair. Zo te zien zit daarin het grote verschil.
Een RAW-bestand moet interpreteerd worden, dat zijn geen 'harde' waarden, en dat zijn waarschijnlijk de verschillen tussen die tweede en derde grafiek.
De vraag is: hoe nauwkeurig heb je die waardes nodig? Gaat het bijvoorbeeld om gemiddelde helderheid van de pixels en de SD daarvan? En meer om relatieve verschillen tussen de verschillende foto's dan om absolute RGB waardes? Dan kun je de bestanden naar jpg omzetten, en ImageMagick kan er dan wat mee. (identify -verbose bestand.jpg)

Verwijderd

Sorry for English.

My name is Iliah Borg, with LibRaw, and RawDigger is one of out programs.

RawDigger displays the raw histogram, while most of the raw converters and image editing programs especially display the histogram of the converted files and thus not very useful for the study of the raw data.

Major differences between two histograms are: raw histogram does not have white balance applied (as it is not applied to raw data); raw data is linear (gamma = 1), while a converted image usually has a tone curve and gamma applied.

Acties:
  • 0 Henk 'm!

  • WhiteRaver
  • Registratie: Oktober 2005
  • Niet online
@ dsltv, Ik dacht dat de waarden makkelijk uit te lezen waren door een programma dat er een duidelijke lijst zou komen met een kolom voor 'x' pixelintensiteit bij 'y' grijstoon. Bij jpg-bestanden zou dit dan 254 grijswaarden betreffen met daarnaast zwart en wit. Bij RAW-bestanden leek het mij dat er misschien wel meer waarden tussen zwart en wit zouden zitten (12bit vs 8bit).
Wat ik wil doen is reflectie van materialen bepalen. Het onderzoek draait grotendeels om te kijken of dit goed mogelijk is met een (spiegereflex)camera. Daarom wil ik graag de exacte getallen bij 'x' pixelintensiteit weten bij een 'y' grijstoon. Zo kan ik foto's onderling exact qua getallen vergelijken in plaats van dat ik visueel de histogrammen naast elkaar leg.
Hopelijk maak ik mij zo duidelijk met deze beknopte omschrijving

@ iliahborg, I think I get it now, that is why (for example) Photoshop is only showing a histogram with values from 0 to 255 and not more.
What I don't get is why I can't reproduce a graph of the histogram with the exported 'Save Full Data' in Excel. For me it looks like I'm missing a lot of values in the exported file?

Graag gedaan.


Acties:
  • 0 Henk 'm!

  • Tim_bots
  • Registratie: April 2004
  • Laatst online: 28-09 12:02
Als je handig bent met programmeren zou je ook in (bijvoorbeeld) PHP een pixel telling kunnen uitvoeren. Hierna kun je met deze waarden doen wat je wil.

zie hier voor een voorbeeld: http://php.net/manual/en/function.imagecolorat.php

[ Voor 21% gewijzigd door Tim_bots op 11-12-2015 12:43 ]

Alvast hartelijk bedankt voor al jullie hulp en reacties, Tim Bots


Acties:
  • 0 Henk 'm!

  • WhiteRaver
  • Registratie: Oktober 2005
  • Niet online
@ Tim_bots, Dat zou helemaal mooi zijn, maar helaas heb ik daar geen kaas van gegeten. En ik gok dat ik daar ook geen tijd meer voor heb, omdat ik nog maar een kleine maand de tijd heb om het onderzoek klaar te hebben en nog teveel te doen heb 8)7 .

Graag gedaan.


Acties:
  • 0 Henk 'm!

  • Tim_bots
  • Registratie: April 2004
  • Laatst online: 28-09 12:02
Even snel wat lopen coden:

De code hieronder haalt alle pixelwaarden op. Deze kun je vervolgens in overige tools bewerken:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
$img = imagecreatefromjpeg("pic.jpg");

list($width, $height) = getimagesize("pic.jpg");

for ($i = 0; $i < $height; $i++) {
    $y = $i; // Get Y coords

    for ($j = 0; $j < $width; $j++) {
        $x = $j; // Get X coords
        
        $rgb = imagecolorat($img, $x, $y); // Get pixel color
        $r = ($rgb >> 16) & 0xFF;
        $g = ($rgb >> 8) & 0xFF;
        $b = $rgb & 0xFF;
        
        print("X:$x Y:$y R:$r G:$g B:$g\r\n");
    }
}
?>

Hierbij moet je alleen "imagecreatefromjpeg" vervangen door het bestandsformaat wat je gebruikt.

Alvast hartelijk bedankt voor al jullie hulp en reacties, Tim Bots


  • WhiteRaver
  • Registratie: Oktober 2005
  • Niet online
Mochten er nog ooit mensen zitten met een soortgelijke vraag, mij is het gelukt met "dcraw" en "findcombedraws" via deze website: http://www.pages.drexel.e...stogram/rawhistogram.html

In ieder geval bedankt voor de hulp van jullie!

Graag gedaan.

Pagina: 1