Camera Profile(IDT)
Camera Profile (IDT)
IDT is the transform which convert camera specific color space into common ACES color space. ACES color space is the device independent color space and this IDT conversion is the first step of ACES workflow. Camera makers who is announced to support ACES is providing their own designed IDT for their cameras. Recently, more and more software implemented these IDTs so not a few users would have used these transform.
WonderLookPro is also available of these maker provided IDTs but we are recommending to use TVLogic's original IDTs, which are made by the measurements by us. Why should we make and provide our own IDTs taking not so small effort?
The primary reason for it is to achieve more accurate camera matching. Making IDTs maker to maker will bring some errors because of the differnce of the measuring embironment or method of calculations. Making IDTs under the same condition and same method will contribute to less error, much more accurate camera matching. In the first place, there are a lot of cameras which IDT has not provided from maker. We make IDTs for these cameras to make full line up of IDTs for as many cameras as we can. Adding to that, thanks to the measurement of camera itself, we have camera's dynamic range information at the same time. Not only dyanamic range value to be compared with different cameras but like CV value for camera saturation, which is useful to decide exposure condition onset.
What is IDT's inside
IDT consists from two parts, one is "Tone Curve" transform, which converts camera's log space into linear space, and another is "Primary Conversion" which convers camera RGB primary to ACES primary.
The most simple form is , 1DLUT or math calculation of camera log to linear, and 3x3 matrix of camera primaty to ACES primary. Here is one of the example of IDT describe in CTL(script language for color transform). (quated from ARRI LogC IDT provided from AMPAS)
float normalizedLogCToRelativeExposure(float x) {
if (x > 0.149659)
return (pow(10,(x  0.385537) / 0.247189)  0.052272) / 5.555556;
else
return (x  0.092809) / 5.367650;
}
void main
( input varying float rIn,
input varying float gIn,
input varying float bIn,
input varying float aIn,
output varying float rOut,
output varying float gOut,
output varying float bOut,
output varying float aOut)
{
float r_lin = "normalizedLogCToRelativeExposure(rIn);
float g_lin = normalizedLogCToRelativeExposure(gIn);
float b_lin = normalizedLogCToRelativeExposure(bIn);
rOut = r_lin * 0.680206 + g_lin * 0.236137 + b_lin * 0.083658;
gOut = r_lin * 0.085415 + g_lin * 1.017471 + b_lin * 0.102886;
bOut = r_lin * 0.002057 + g_lin * 0.062563 + b_lin * 1.060506;
aOut = 1.0;
}
First transform is by "normalizedLogCToRelativeExposure" function, which converts Log to linear. Next conversion is 3x3 matrix calculation which converts camera RGB into ACES rgb. To make IDT, we have to get parameters for these two transforms, the shape of tone curve, and coefficients of 3x3 matrix.
But in reality, real camera has not ideal spectral sensitivity, which brings error when transfering 3x3 matrix to ACES. To make IDT more accurate, we have to add another method to reduce the error.
How to make IDT
TVLogic is making IDTs by the camera measurements under the dark room with following devices.
用途 
機種 
画像 
特徴 
Light Source Integrating Sphere 
Image Engineering LE74x 
max 4000lx. 22ch differenct spectrum of LED light can make various spectrum of light. There are spectrum measurement probe inside to make auto calibration. 

Dynamic Range Chart 
ARRI Dynamic Range Test Chart DRTC1 
Equitable for 40 kinds of filters. We make our own filter to achive 17.8 stop range brightness 

Color Chart 
Image Engineering TE226 
Transparent chart of 36 colors and 9 brightness of gray. Adding LE7 control, a couple of brightness measurement is used for calcuration of IDT. 

Capture Image 
IS100/ ISminiX 
The image output from camera in HDSDI/3GSDI is captured by IS100 or ISminiX. If necessary, we will cake IDT from RAW developed image. 

Device Control Data Srocessing 
CreateIDT (Software for inhouse use) 
It is made specially for IDT creation. Control of LE7, IS100 and ISmini, manage captured images and extracted data, calculation of IDT and creation of CTL. It is designed to support whole workflow from camera measurement to created IDT evaluation. 
Measurement of the Dynamic Range
Here is the patches data we are using to measure camera's dynamic range. The patch's maximum density is 5.33, it means 17.77stops range can be measured in one shot.
Number 
Density 
EV 
1 
0.000 
0.00 
2 
0.056 
0.19 
3 
0.135 
0.45 
4 
0.261 
0.87 
5 
0.379 
1.26 
6 
0.478 
1.59 
7 
0.581 
1.94 
8 
0.686 
2.29 
9 
0.796 
2.65 
10 
0.889 
2.96 
11 
0.999 
3.33 
12 
1.105 
3.68 
13 
1.201 
4.00 
14 
1.303 
4.34 
15 
1.397 
4.66 
16 
1.494 
4.98 
17 
1.595 
5.32 
18 
1.691 
5.64 
19 
1.795 
5.98 
20 
1.927 
6.42 
21 
2.018 
6.73 
22 
2.183 
7.28 
23 
2.443 
8.14 
24 
2.647 
8.82 
25 
2.854 
9.51 
26 
3.054 
10.18 
27 
3.223 
10.74 
28 
3.452 
11.51 
29 
3.660 
12.20 
30 
3.860 
12.87 
31 
4.075 
13.58 
32 
4.258 
14.19 
33 
4.422 
14.74 
34 
4.693 
15.64 
35 
4.846 
16.15 
36 
5.034 
16.78 
37 
5.150 
17.17 
38 
5.268 
17.56 
39 
5.304 
17.68 
40 
5.330 
17.77 
Here is the measurement example for SONY F55's SLOG3 mode with SLOG3 definision curve based on SONY's white paper. Horizontal axis is LogE, vertical axis is 10bit code value from the camera. 40 red circles are the original measured data, yellow curve is the SLOG3 definition.
As you can see, our system is capable to measure the dynamic range by one shot with good accuracy even for wide dynamic range camera. The above example shows that the measurement and SLOG3's definition matched very well and it means our measurement has a good enough accurary with makers one.
How to get matrix parameters
Typical IDT, mostly provided from camera makers, consists from tone curve which convers Log to linear, and 3x3 matrix which converts camera color to ACES primary. This simple procedure is easy to calculate inverse transform, which is very convenient. But one 3x3 matrix can not remove nonlinear error of primary conversion. TVLogic implemented our own method to reduce this error by deviding the color spaces into a couple of regions and calculate the optimal matrix for each region. By this method, we could make good precision of IDTs. But we are still on the way to inprove the quality of IDT and still studying how to improve the presision and remove the erros.
Here is the diagram of primaries in xy chromaticity, left is SLOG3 and right is ACES primary.
If there is no error in camera's spectral sensitivity and there is no errors in camera calculation, we can get ACES primary by following calculation.
Comparison of IDTs : Maker provided and Made by TVLogic
F55 SLOG3/SGamut3
Let's chekc the result by using color chart. F55's SLOG3/SGAMUT3 will be used for the reference. First, here is the rendering result of F55's image, by TVLogic's IDT, RRT and rec709 ODT.
F55 SLOG3/SGAMUT3 + TVLogic's IDT + RRT/ODT
Next, here is the result by using SONY provided IDT. The image and vector scope with deltaE value are shown.
Image 
Vector 
deltaE 

MakerのIDTで処理 
3.13 
The top of the arrow of the vector scope targets the color of TVLogic IDT's result. Longer the arrow the bigger the difference between TVLogic's IDT and SONY's IDT. "deltaE" means average color difference value, the smaller the value the smaller the difference of colors. The value is calculated by ACES color value just after the IDT process and averaged for all 40 colors.
The value 3.13 is not so big. Vector scope shows blue or purple colors have a little bit bigger difference. We show measure the color of the chart again to evaluate which is much closer to the real object color. We can understand that the difference of how to create IDT might bring these minor errors.
Next, we will show the result of Panasonic Varicam LT. The reference is F55 by TVLogic IDT.
Image 
Vector 
deltaE 

VaricamLT TVLogic'sIDT 
3.13 

VaricamLT Panasonic's IDT 
9.06 
Again, the deltaE is calculate the difference form F55 by TVLogic IDT.
The deltaE value by TVLogic IDT is 5.08, and the value by Panasonic IDT is 9.06. It means TVLogic's IDT is much close to F55 result.
Next, we will show ARRI AlexaMINI's result.
Image 
Vector 
deltaE 

AlexaMINI TVLogic'sIDT 
6.77 

AlexaMINI ARRI's IDT 
7.58 
The average deltaE shows that 6.77 for TVLogic IDT and 7.58 for ARRI's IDT. TVLogic's IDT is a little bit closer to F55, but these are not the big difference. On the vector scope, we can observe rather big error for blue or purple on TVLogic IDT's result. For ARRI's IDT result, there is no big error colors but many color have a little bit big error than TVLogic's IDT result.
Regarding gray scale, all of the results are within affordable error, for any cameras, by any IDTs.
We showed the comparison of TVLogic's IDTs and each maker provided IDTs. The result say, there are not so big difference for any IDTs, but it would be better to use TVLogic's IDTs to minimize the error between cameras. We will continue to measure new cameras to provide new IDTs and will continue to investigate the method to create much better quality IDTs.
Here is the list of cameras WonderLookPro is providing IDT.
Listed on June 1, 2020
ARRI ALEXA MINI 
ARRI ALEXA 
ARRI AMIRA 
BLACKMAGIC CinemaCamera2.5K 
BLACKMAGIC PocketCinemaCamera 
BLACKMAGIC ProductionCamera4K 
BLACKMAGIC URSA4K 
Bypass 
CANON (Maker provided) C100 
CANON (Maker provided) C300 
CANON (Maker provided) C500 
CANON C100 Mark2 
CANON C100 
CANON C300 Mark2 
CANON C300 
CANON C500 
FORA FTONES 
FORA FTONE 
FORA VFC7000 
GOPRO HERO4 
JVC GYLS300CH 
Nikon Z6 
Nikon Z7 
PANASONIC AGDVX200 
PANASONIC AKHC1500G 
PANASONIC AKHC1800G 
PANASONIC AUEVA1 
PANASONIC GH4 
PANASONIC POVCAM 
PANASONIC VARICAM HS 
PANASONIC VARICAM35 
RED EPIC DRAGONLLO 
RED EPIC DRAGONSTD 
RED EPIC DRAGONSTH 
RED EPIC 
RED SCARLET 
RED WEAPON 8K S35 
SONY (Maker provided) F65 
SONY (Maker provided) PMWF55 
SONY Alpha6300 
SONY Alpha7s 
SONY Alpha7s2 
SONY F35 
SONY F65 
SONY FS700 
SONY HDC1500 
SONY HDC1500R 
SONY HDC1600_or_1600R 
SONY HDC2500 
SONY HDC2600 
SONY HDC4300 
SONY HDC950 
SONY HDW790 
SONY HDWF900R 
SONY HXRNX5J 
SONY PMW200 
SONY PMW300K 
SONY PMW400 
SONY PMWEX3 
SONY PMWF3 
SONY PMWF5 
SONY PMWF55 
SONY PMWF55withBPU 
SONY PXWFS5 
SONY PXWFS7 
SONY PXWX500 
SONY SRW9000 
SONY SRW9000PL 
SONY VENICE 
Various Signals ACESproxy (ACES V1.0) 
Various Signals Cineon 
Various Signals HSLA 
Various Signals Rec2020 
Various Signals Rec709 
VISION RESEARCH PhantomFlex4K 