Raspberry Pi Camera : RAW photo examples

RPi camera test setup

These photos taken using Raspberry Pi CSI camera with 'raspistill --raw' so they are JPEG format with a packed binary RAW data block appended at the end. Total file size is typically 10 MB. Photos taken around 3:30 PDT (local solar time about 2:30 pm) June 1 2013. The sun was high in a nearly cloudless sky in Mountain View, California. Because I do not have full manual control of exposure, I used different backgrounds to force a change to the auto-exposure settings. In the last 5 photos, the camera was about 90 cm from the color test charts, so they are out of focus. The near point of the infinity fixed-focus lens is about 2 m.  R-Pi forum discussion about raw images is here.

RAW0132.jpg - two faces in hard light
RAW0182.jpg - more harsh facial shadows
RAW0192.jpg - high contrast on faces
RAW0261.jpg - fine diagonal lines (utility lines against sky)
RAW0248.jpg - trees with sky, JPEG at full white on right edge
RAW0029.jpg - chart IT8.7/2 with white bgnd
RAW0033.jpg - chart IT8.7/2 with natural bkgnd, center-weighted avg
RAW0034.jpg - chart IT8.7/2 with natural bgnd, exposure matrix
RAW0077.jpg - chart MacBeth ColorChecker, white background
RAW0049.jpg - chart MacBeth ColorChecker, darker background

2014 NOTE: the R-Pi firmware changed after I took the images above in 2013, and at least two things are different: camera model is now reported as "RP_OV5647" instead of  "ov5647" and the bayer color order is different (sensor readout direction reversed).  Here is a newer raw image:
RAW-GMB-Nov2014.jpg - chart MacBeth ColorChecker, overcast sky lighting, aftermarket M12 lens


DSLR  RAW image (Canon 20D) of this MacBeth chart, within a few minutes of above photos: Canon20D-MacBeth-2013.CR2
Hand-measured spectral data from this MacBeth chart (taken several years ago): JBeale-Macbeth-Chart-Data-June10-2010.xls
CIELAB and XYZ coordinates from the manufacturer, for this batch of IT8.7/2 charts: http://www.colorreference.de/targets/R040220.zip

Code to extract raw data from the RasPi JPEG+RAW file into Adobe DNG format.: github.com/illes/raspiraw
Older C source and R-Pi (Linux 3.6.11+ #452 May 17 2013) executable for above program: raspi_dng_01.tar.gz
Mods to Dave Coffin's dcraw to support newer RPi firmware RAW output: RPi forum post Nov.29 2014

Note: no reasonable color matrix / whitepoint yet, so the DNG output from this code, while technically valid, needs drastic color adjustment.  Just playing around* by eye with an example DNG in ufraw, then sharpening & saturation bost in Photoshop, I got something with odd but at least recognizable color. No denoising, so while there is a grainy look you do see more detail, note the zone plates, and the fine horizontal lines on my shirt. RAW0132-converted.png  Compare the crops from the Raw-DNG file and the default JPEG from raspistill, there is always a subjective tradeoff between denoising (smooth textures) and real surface detail.

* In UFRaw:  Manual WB, Temperature 9624, Green 0.4, Channel Multiplier  1.393, 1.0, 1.286
Exposure -0.44,  Base Curves: Manual,  Color Mgmt: No profile,  Saturation: 1.38
...and then sharpen & various tweeking in Photoshop


from raw DNG after sharpening  from JPEG saved by raspistill

Other tests: horizontal field of view: RPi-819mm-HFOV.jpg
Visible outer lens diameter: RPi-camera-lens-size.jpg
Change lens focus to 15 cm: RPi-cam-15cm-small.png
Compact fluorescent in spectroscope:  RPi-CF-spec1.jpg  full-frame view: RPi-spec-fullframe-25pct.jpg
250W halogen bulb in spectroscope: RPi-contSpec-reticle-raw-June10.jpg
Comparison of JPEG and RAW spectrum (with UFRAW settings above) RPi-Spec-Compare-raw-June10.png
IR LEDs with RPi camera: RPi-D8-Nightshot.jpg and with IR security camera: IRCam-D8-Nightshot.jpg
Frame Exposure control: OV5647-FREX-registers.png

page by John Beale - 2 June 2013