HDRgen from USB camera stills


Greetings all,

I’ve been using a CMOS, board level, USB camera for capturing 10-12, bracketed, 800x600, still images using 4VL2 in Linux. I can control exposures while setting white balance and gain/ISO constant to produce a decent range of LDR images with broad light gradients. I also update each LDR image’s EXIF header with exposure time, ISO, f-stop, and color space using Exiftool. However, using HDRgen I keep getting ‘can’t resolve for response function’. When I try using Photosphere, I get the same error and so use the default camera response function and then calibrate against a measured, point luminance reading taken while capturing the LDR images. When I sample the resultant HDR image pixels, the pixels within the area used for calibration agree with those physically measured, however luminance values measured within much brighter areas in the scene (i.e. out the window) are much lower (by half) than what was physically measured.

Can anyone offer any insights on what the issue might be with not being able to generate the camera response function and also why the luminance values after calibration are off? Could it have something to do with using 4VL2 to capture the images from what’s essentially a web cam?

The camera sensor is a Sony IMX322 and the captured images are in sRGB color space.

As always, thank you,


It’s difficult to say without seeing your input images. Can you upload them in a zip file, somewhere? Typical problems include automatic tone curve manipulations in the camera, JPEG artifacts, black subtraction, excessive noise, etc., etc.


Hi Chris,

recovery of the response assumes that all pixels equally scale with exposure. Wide dynamic range CMOS may, however, adapt the response of individual pixels to the particular irradiance they receive. This is not reflected in the exif or your settings, and may make the entire process impossible.

Cheers, Lars.


Hi Greg,

I’ve compressed the LDR jpegs along with a jpeg showing spot measurements, and placed the file on my DropBox.



Thank you, Lars.

I was not aware of this effect with certain CMOS sensors!



It could be CMOS manipulations, but just as likely it is a combination of low-resolution images and serious JPEG artifacts. The response fitting algorithm is having trouble finding smooth areas for its patch comparisons between exposures. In general, a better class of camera is expected…