<p>A1: Links like these mention that ProRes 'bakes in' the white balance (as opposed to storing it as separate metadata): <a href="https://forum.blackmagicdesign.com/viewtopic.php?t=11980" rel="nofollow noreferrer">blackmagicdesign.com forum</a> ; <a href="http://www.reduser.net/forum/showthread.php?117147-What-are-the-pros-and-cons-of-recording-Pro-res-versus-Raw&amp;p=1371076&amp;viewfull=1#post1371076" rel="nofollow noreferrer">reduser.net forum</a> ; <a href="http://www.reduser.net/forum/showthread.php?151249-Color-space-for-ProRes-422-HQ&amp;p=1685814&amp;viewfull=1#post1685814" rel="nofollow noreferrer">reduser.net forum</a> ; <a href="http://www.cinematography.com/index.php?showtopic=71863&amp;p=459462" rel="nofollow noreferrer">cinematography.com forum</a> ; <a href="http://www.bmcuser.com/archive/index.php/t-837.html" rel="nofollow noreferrer">bmcuser.com archive</a></p>

<p>(I am surprised this is not more obviously stated on the web anywhere - it seems to be assumed knowledge)</p>

<p>A2: I did end up computing the least-squares solution that brings the 'bad' pixels over to the 'good' ones in RGB space. This gave me a 3x3 transformation matrix that could be applied to each pixel of the bad frames. After this their colour looked very much like that of the good frames.</p>

<p>In MATLAB this is as simple as reshaping one's image matrices into long 3xN lists of pixels (A = the bad frames, B = the good frames) and computing <code>M = B/A</code>, i.e. solving MA=B for M.</p>

CC BY-SA 3.0
2018-03-13T23:47:35.023Z
That seems like a very good solution. I was going to suggest tracking an area of colour and using it to drive a colour corrector in After Effects, but using MATLAB and hand-rolled statistical analysis  wins on nerd points alone.
stib
CC BY-SA 3.0
2018-03-14T11:38:20.353Z
What I lack in video recording knowledge I make up for in linear algebra! Or maybe when all you have is a hammer, everything looks like a nail...
benxyzzy
CC BY-SA 3.0
2018-03-13T17:26:10.127Z
2018-03-13T17:26:10.127Z
benxyzzy
<p>Unbeknownst to me at the time, the camera I was using to record a talking head (so fixed environment and lighting) seems to have drastically altered its colour temperature part-way through recording. I put my hand in front of the lens at one point, and as well as refocusing to the hand (thankfully temporarily) the camera appears to have shunted everything toward blue from that point on. <strong>The talking head goes from warm and 'naturally skin-coloured' to beyond pallid.</strong></p>

<p>It was recording to an Atomos Ninja in ProRes 422 HD, which I understand 'bakes' white balance directly into the recorded data as opposed to storing it as metadata like RAW.</p>

<p>Q1: Am I correct here, or <strong>is it actually possible to retrieve per-frame colour balance settings from a ProRes .mov file?</strong> If so, this would be my preferred option as I can then 'objectively' reverse it. I've tinkered with ffprobe but it doesn't yield anything useful-looking.</p>

<p>Q2: <strong>If I am correct that the colour shift exists in the video data itself, what's the best post-recording correction method?</strong> Working in my favour is a) the background never changes so before/after can be compared on a per-pixel basis, and b) The shift occurs at a single time, with the colour stable before and after. So only one correction need be applied, and I know when.</p>

<p>I'm using MATLAB (this is computer-vision related), which at first glance offers white point, grey world, and PCA-based correction.</p>

<p>For visualisation here's two frames from before and after the camera auto-corrected, with pixels plotted in RGB space. Right now I'm thinking of computing some rigid transform in RGB space to overlap one with the other, but this question is asking whether there's a more 'standard' solution.
<a href="https://i.sstatic.net/CJDOu.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/CJDOu.png" alt="Two frames before/after auto-colour correction in RGB space"></a></p>

<color-correction><prores>
White balance auto-adjusted half way through recording
benxyzzy
# White balance auto-adjusted half way through recording

(Asked by: username_0 on 2018-03-09)

Unbeknownst to me at the time, the camera I was using to record a talking head (so fixed environment and lighting) seems to have drastically altered its colour temperature part-way through recording. I put my hand in front of the lens at one point, and as well as refocusing to the hand (thankfully temporarily) the camera appears to have shunted everything toward blue from that point on. **The talking head goes from warm and 'naturally skin-coloured' to beyond pallid.**

It was recording to an Atomos Ninja in ProRes 422 HD, which I understand 'bakes' white balance directly into the recorded data as opposed to storing it as metadata like RAW.

Q1: Am I correct here, or **is it actually possible to retrieve per-frame colour balance settings from a ProRes .mov file?** If so, this would be my preferred option as I can then 'objectively' reverse it. I've tinkered with ffprobe but it doesn't yield anything useful-looking.

Q2: **If I am correct that the colour shift exists in the video data itself, what's the best post-recording correction method?** Working in my favour is a) the background never changes so before/after can be compared on a per-pixel basis, and b) The shift occurs at a single time, with the colour stable before and after. So only one correction need be applied, and I know when.

I'm using MATLAB (this is computer-vision related), which at first glance offers white point, grey world, and PCA-based correction.

For visualisation here's two frames from before and after the camera auto-corrected, with pixels plotted in RGB space. Right now I'm thinking of computing some rigid transform in RGB space to overlap one with the other, but this question is asking whether there's a more 'standard' solution.
[![Two frames before/after auto-colour correction in RGB space](https://i.sstatic.net/CJDOu.png)](https://i.sstatic.net/CJDOu.png)

**Tags:** color-correction, prores


---

## 1 answers

### Answer by username_0 on 2018-03-13. Score: 2

A1: Links like these mention that ProRes 'bakes in' the white balance (as opposed to storing it as separate metadata): [blackmagicdesign.com forum](https://forum.blackmagicdesign.com/viewtopic.php?t=11980) ; [reduser.net forum](http://www.reduser.net/forum/showthread.php?117147-What-are-the-pros-and-cons-of-recording-Pro-res-versus-Raw&p=1371076&viewfull=1#post1371076) ; [reduser.net forum](http://www.reduser.net/forum/showthread.php?151249-Color-space-for-ProRes-422-HQ&p=1685814&viewfull=1#post1685814) ; [cinematography.com forum](http://www.cinematography.com/index.php?showtopic=71863&p=459462) ; [bmcuser.com archive](http://www.bmcuser.com/archive/index.php/t-837.html)

(I am surprised this is not more obviously stated on the web anywhere - it seems to be assumed knowledge)

A2: I did end up computing the least-squares solution that brings the 'bad' pixels over to the 'good' ones in RGB space. This gave me a 3x3 transformation matrix that could be applied to each pixel of the bad frames. After this their colour looked very much like that of the good frames.

In MATLAB this is as simple as reshaping one's image matrices into long 3xN lists of pixels (A = the bad frames, B = the good frames) and computing `M = B/A`, i.e. solving MA=B for M.

> **Comments:**
> **username_1**: That seems like a very good solution. I was going to suggest tracking an area of colour and using it to drive a colour corrector in After Effects, but using MATLAB and hand-rolled statistical analysis  wins on nerd points alone.  
> **username_0**: What I lack in video recording knowledge I make up for in linear algebra! Or maybe when all you have is a hammer, everything looks like a nail...  

---

