Nikon Kamera - Nikon Camera
From IMT-Wiki
Jump to navigationJump to search
Nikon Kamera
Nikon Kamera Dateiformat
Nikon verwendet für seine Kameras das sogenannte Nikon Electronic File Format (*.nef). Das *.nef Dateiformat wird von diversen Anwendungen unterstützt (z.B. Photoshop). Falls man aber eine große Anzahl Dateien verarbeiten will ist dieser Weg ungeeignet. Glücklicherweise bietet Nikon auf seiner Webseite die Möglichkeit an die Software Developtment Kit (SDK) herunterzuladen. Die in diesem Paket enthaltene Programmbibliothek (dll) exportiert funktionen, die die Verarbeitung von *.nef Dateien erlaubt.
Hier ist ein Beispiel-Code als Visual Studio 2012 Projekt zum herunterladen.
Anmerkungen:
- In den *.nef Dateien sind immer vorschaubilder in Unterschiedlichen Auflösungen enthalten (*.jpg Kompression). Diese können mit der SDK ebenso extrahiert werden. Die erhaltenen Daten sind im 24 bit RGB (8 bit Rot, 8 bit Grün, 8 bit Blau) little-Endian Format und können z.B. mit ImageJ über File->Import->Raw mit eben erwähnten Einstellungen importiert werden.
- Die eigentlichen Bildinformationen liegen im 48 bit RGB (16 bit Rot, 16 bit Grün, 16 Bit Blau) little-Endian Format vor. Bis zum erstellen dieses Artikels ist kein Programm bekannt, dass dieses Dateiformat selbstständig lesen kann. Man kann sich jedoch z.B. mit Matlab behelfen:
function displayNEF(width, height)
% open file
fileHandle = fopen('FullPic_4928_3280.raw');
% read in 16 bit values in little-Endian
test = fread(fileHandle,inf,'*uint16','l');
% get first (=red) layer of image and reshape to a matrix with |height|
% rows and |width| columns
I1 = reshape(test(1:3:end),height,width);
% display red layer
figure, imagesc(I1), colormap('gray');
% close file
fclose(fileHandle);
end