### Dcamprof initial command example Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html An example command for initial processing with dcamprof, specifying input files and parameters for color adjustment. ```bash -i light.sp -t acr -y -0.20 -a adjust.json -L \combo.ti3 test-adjust.dcp ``` -------------------------------- ### Profile Making with Matrix Optimization Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html This example demonstrates applying matrix optimization refinements to specific patches and saving detailed reports. It allows for disabling the LUT in the printed report for direct matrix matching analysis. ```bash dcamprof make-profile -r dump \ -V -L -v A02 0 -v C01 0,2,-1,1,-2,0 -v C03 -3,3,-3,3,0,3 cc24.ti3 profile.json ``` -------------------------------- ### Initial Release of DCamProf (0.5.0) Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof-old-news.html The first public release (0.5.0) introduced the capability to create camera profiles. While functional, it was noted as 'hackish' and potentially slow, with a focus on getting features working over optimization. ```bash make camera profiles ``` -------------------------------- ### Workflow Summary: Display Calibration and Profiling Source: https://github.com/beep6581/dcamprof/blob/master/www/argyll-display.html A consolidated workflow summary for display calibration and profiling using ArgyllCMS tools, from initial calibration to profile installation and checking. ```bash dispcal -H -t 6500 -b 100 dummy -- tune to match D65 and 100 cd/m2 using the screen's settings. ``` ```bash dispcal -v -R -- measure the native gamma ``` ```bash dispcal -v -H -o -t 6500 -g -- calibrate. ``` ```bash targen -v -g33 -d3 -- generate profiling test target. ``` ```bash dispread -v -H -k .cal -- profile. ``` ```bash colprof -v -qh -as -nc -- generate final ICC profile. ``` ```bash profcheck -v2 -k .ti3 .icc | sort -- optional DE2000 check. ``` ```bash dispwin -I .icc -- install profile ``` -------------------------------- ### Dcamprof make-profile command for preliminary profile generation Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Generate a preliminary camera profile using dcamprof with specified weights for CC24 and glossy color classes. The `-y` and `-a` parameters are examples and should be replaced with actual values if available. ```bash dcamprof make-profile \ -r dump1 \ -i light.sp \ -l 0 \ -x exclude.txt \ -y -0.20 -a adjust.json \ -w cc24 1 -w glossy 0.2 \ -L \ combo.ti3 preliminary.json ``` -------------------------------- ### Start Display Calibration Source: https://github.com/beep6581/dcamprof/blob/master/www/argyll-display.html Initiates the calibration process with specific white-point and gamma targets. ```bash dispcal -v -H -o -t 6500 -g ``` -------------------------------- ### Example ForwardMatrix for Canon 5D Mark II Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html This is an example of the 'ForwardMatrix' output from the `make-profile` command for a Canon 5D Mark II. Focus on the 'ForwardMatrix' for actual color reproduction. Negative components are normal, but large negative values on the Y row for blue may indicate issues. ```json "ForwardMatrix1": [ [ 0.828276, -0.010988, 0.146931 ], [ 0.343230, 0.756043, -0.099273 ], [ 0.041395, -0.179915, 0.963721 ] ] ``` -------------------------------- ### Import Raw Text Spectral Data with txt2ti3 Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html Converts raw text spectral data files into the .ti3 format readable by make-target. Use this for spectral data without headers. The example imports Caucasian spectral data and specifies a 400-700nm range with 2nm steps. ```bash dcamprof txt2ti3 -a "caucasian" -s 1 -f 400,700,2 \ Reflect_AllCaucasian_400_700_2nm.txt caucasian.ti3 ``` -------------------------------- ### Compile DCamProf from source Source: https://github.com/beep6581/dcamprof/blob/master/README.md Navigate to the source directory and execute the make command to build the executable. ```bash cd src make ``` -------------------------------- ### Example ForwardMatrix for Sony A7r-II Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html This is an example of the 'ForwardMatrix' output for a Sony A7r-II. A more negative value (-0.283960) on the blue subtraction component suggests a potential need to adjust for deep blue rendering. ```json "ForwardMatrix1": [ [ 0.766137, 0.221330, -0.023249 ], [ 0.267829, 1.016132, -0.283960 ], [ 0.015094, -0.140933, 0.951041 ] ] ``` -------------------------------- ### Define RoundedStep curve handles Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Example of the handle array structure for a RoundedStep curve. ```json [ [ 0,0 ], [ 0.3,1 ], [ 0.6, 1 ], [ 0.9, 0 ], [ 1, 0 ] ] ``` -------------------------------- ### Generate target files from scratch Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html Creates target files using camera SSF and the built-in database. ```bash dcamprof make-target -c 5dmk2-ssf.json -i StdA -I D50 -p cc24 output.ti3 ``` ```bash dcamprof make-target -c 5dmk2-ssf.json -i StdA -I D50 -p cc24 \ -p munsell output.ti3 ``` -------------------------------- ### Generate preliminary profile Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Create an initial profile and dump plots for analysis. ```bash dcamprof make-profile -r dump1 -i light.sp cc24-ff.ti3 preliminary.json ``` -------------------------------- ### View matching statistics Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Example output of matching statistics displayed on the console after rendering a profile. ```text Native LUT patch match average DE 1.94, DE LCh 1.09 0.83 1.04 median DE 1.66, DE LCh 0.82 0.87 0.80 p90 DE 3.91, DE LCh 2.74 1.46 1.94 max DE 4.76, DE LCh 3.88 3.02 4.24 ``` -------------------------------- ### Define LUT Curve JSON Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Example structure for the lut-curve.json file used to define manual contrast adjustments. ```json { "CurveType": "Spline", "CurveHandles": [ [ 0,0 ], [ 14,8 ], [ 27,20 ], [ 115, 118 ], [ 229, 233 ], [ 255, 255 ] ], "CurveMax": 255, "CurveGamma": 1.8 } ``` -------------------------------- ### Basic Profile Creation with dcamprof Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html Use this command for basic profile making with default parameters, specifying the calibration illuminant. ```bash dcamprof make-profile -i StdA target.ti3 profile.json ``` -------------------------------- ### Specify Matrix Refinement Parameters Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html Defines acceptable DE error ranges for specific patches to guide the matrix optimizer. ```bash -v A02 -0.5,1,-3,2,-0.3,1.5 ``` ```bash -v A02 0 -v C01 0,2,-1,1,-2,0 -v C03 -3,3,-3,3,0,3 ``` -------------------------------- ### Dummy Target Creation with DCamProf Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html Creates a dummy `.ti3` target file from an input text file using DCamProf. This can be a workaround if Argyll cannot directly read the input format. ```bash dcamprof make-target -p **input.txt** -a "name" output.ti3 ``` -------------------------------- ### Plotting with Gnuplot Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Starts gnuplot with a gray background and plots various data files to visualize the LUT, spectral locus, gamuts, and error vectors. Adjust `offset` for label alignment. ```gnuplot gnuplot -background gray ``` ```gnuplot splot 'nve-lut.dat' w l lc "beige", \ 'gmt-locus.dat' w l lw 4 lc rgb var, \ 'gmt-prophoto.dat' w l lc "brown", \ 'gmt-adobergb.dat' w l lc "red", \ 'gmt-pointer.dat' w l lw 2 lc rgb var, \ 'gmt-fm.dat' w l lc "blue", \ 'gmt-prof.dat' w l lc "purple", \ 'target-nve-lutve2.dat' w vec lc "black", \ 'target-nve-lutvm.dat' w vec lw 2 lc "olive", \ 'targetd50-xyz.dat' pt 4 lc rgb var, \ 'targetd50-xyz.dat' using 1:2:3:5 w labels offset 3 ``` -------------------------------- ### Make Preliminary Profile with DCamProf Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Generates a preliminary colorimetric profile. Use `-l 0` for no LUT relaxation to easily spot problems. Provide spectrum data (`-i`) for accurate reference values. ```bash dcamprof make-profile -r dump1 -l 0 \ -i light.sp combo.ti3 preliminary.json ``` -------------------------------- ### Create Profile with Custom Weighting and Report Output Source: https://context7.com/beep6581/dcamprof/llms.txt Creates a camera profile with custom weighting settings and directs report output to a specified directory. ```bash dcamprof make-profile -g cc24-layout.json -r report-dir target.ti3 profile.json ``` -------------------------------- ### Create Dual-Illuminant Profile with DCamProf Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Use this command to merge two single-illuminant profiles into a dual-illuminant DCP. Ensure the lower temperature profile is listed first. Options include specifying camera name, profile description, illuminants, custom curves, exposure offsets, and gamut compression. ```bash dcamprof make-dcp -n "Canon EOS 5D Mark II" -d "My Profile" -i StdA -I D50 \ -b 0.3 -t curve.rtc -g adobergb-strong \ final-2.json final-1.json final-dual.dcp ``` -------------------------------- ### Execute Base Profile Run Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html Performs an initial profile generation to evaluate the unrefined matrix performance. ```bash dcamprof make-profile -L -r dump cc24.ti3 dummy.json ``` -------------------------------- ### ScaleChroma Operator with BlendInvert Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html This operator is used to make everything except the selected area monochrome. The 'BlendInvert' flag achieves this effect, making it useful for identifying which gamut area to select. Ensure hue curves start and end with 0 output. ```json { "Operator": "ScaleChroma", "Value": 0, "BlendInvert": true, //"BlendRGB": true, "Blend": [ { "X": "Hue", "XRange": [ 70, 300 ], "Curve": { "CurveType": "RoundedStep", "CurveHandles": [ [ 0, 0 ], [ 0.1, 1 ], [ 0.9, 1 ], [ 1, 0 ] ] } }, { "X": "Chroma", "XRange": [ 40, 70 ], "Curve": { "CurveType": "RoundedStep", "CurveHandles": [ [ 0, 1 ], [ 1, 0 ] ] } } ] } ``` -------------------------------- ### Create reference profiles for comparison Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Generate an exact profile and a matrix-only profile to serve as baselines for visual comparison. ```bash dcamprof make-dcp -d "no relax" \ -n "Canon EOS 5D Mark II" \ preliminary.json no-relax.dcp dcamprof make-dcp -d "matrix-only" \ -n "Canon EOS 5D Mark II" -L \ preliminary.json matrix.dcp ``` -------------------------------- ### Camera Color Response Matrix Example Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html This matrix represents how a camera's raw RGB channels are converted to CIE XYZ color space. It's used to match the camera's output to human visual perception, often requiring adjustments like subtracting blue light. ```plaintext CIE X = R * 0.766 + G * 0.221 + B * -0.023 CIE Y = R * 0.267 + G * 1.016 + B * -0.283 CIE Z = R * 0.015 + G * 0.140 + B * 0.951 ``` -------------------------------- ### RawTherapee: Load Custom Input Profile Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Navigate to the "Color Management" / "Input profile" / "Custom" section in RawTherapee to load the profile you wish to test. ```bash Custom ``` -------------------------------- ### Make Native Profile with DCamProf Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html Use this command to create a native profile from a linear .ti3 file. Ensure the layout JSON is correctly specified. ```bash dcamprof make-profile -g cc24-layout.json new-target.ti3 profile.json ``` -------------------------------- ### Create Basic Camera Profile Source: https://context7.com/beep6581/dcamprof/llms.txt Generates a native DCamProf profile (JSON) from an Argyll .ti3 target file. ```bash dcamprof make-profile -g cc24-layout.json rawfile.ti3 profile.json ``` -------------------------------- ### Create Dual-Illuminant DCP Profile Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html Use this command to create a dual-illuminant DCP profile by providing two separate native profiles. Ensure the lower temperature illuminant is listed first and that illuminants have known temperatures. ```bash dcamprof make-dcp profile1.json profile2.json dual.dcp ``` -------------------------------- ### Generate Preliminary Profile Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Creates a preliminary DNG profile from the combined target data. Use -r to specify a directory for plots and -l for linearization. ```bash dcamprof make-profile -r dump1 -l 0 -i light.sp combo.ti3 preliminary.json ``` -------------------------------- ### Create DNG Profile with DCamProf Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html Generates a colorimetric DNG profile. Ensure the camera manufacturer and model names exactly match the raw converter's expectations. ```bash dcamprof make-dcp -n "Camera manufacturer and model" -d "My Profile" profile.json profile.dcp ``` -------------------------------- ### Create Profile with Custom Illuminant and SSFs Source: https://context7.com/beep6581/dcamprof/llms.txt Creates a camera profile using custom illuminant and camera spectral sensitivity functions (SSFs). ```bash dcamprof make-profile -c ssf.json -i StdA -g cc24-layout.json target.ti3 profile.json ``` -------------------------------- ### Creating a DCamProf Native Profile Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Generate a DCamProf native profile from the scanned .ti3 file. Specify the illuminant (e.g., D50 or D65) that matches the capture conditions. The tool automatically relaxes the lookup table for smoothness. ```bash dcamprof make-profile -i D50 -C cc24.ti3 my-profile.json ``` -------------------------------- ### Create Camera Profile Source: https://github.com/beep6581/dcamprof/blob/master/www/dcamprof.html Creates a camera profile using spectral data. It's recommended to include the camera's SSF file for accurate RGB and XYZ value regeneration. ```bash dcamprof make-profile -c ssf.json target.ti3 profile.json ``` -------------------------------- ### make-profile - Create Camera Profiles Source: https://context7.com/beep6581/dcamprof/llms.txt Creates a native DCamProf profile (JSON format) from a target file. The profile contains color and forward matrices plus a LUT for non-linear corrections. ```APIDOC ## make-profile - Create Camera Profiles ### Description Creates a native DCamProf profile (JSON format) from a target file. The profile contains color and forward matrices plus a LUT for non-linear corrections. ### Method `dcamprof make-profile` ### Endpoint N/A (Command Line Tool) ### Parameters #### Command Line Arguments - `-g` (string) - Required - Path to the target layout file (e.g., `cc24-layout.json`). - `target.ti3` (string) - Required - Input target file path. - `profile.json` (string) - Required - Output DCamProf profile file path. - `-c` (string) - Optional - Path to camera SSF JSON file. - `-i` (string) - Optional - Illuminant name (e.g., StdA). - `-C` (flag) - Optional - Enable color constant behavior. - `-r` (string) - Optional - Directory for report output. - `-l` (string) - Optional - Path to LUT relaxation configuration file. ### Request Example ```bash # Basic profile creation from Argyll .ti3 file dcamprof make-profile -g cc24-layout.json rawfile.ti3 profile.json # Profile with custom illuminant and camera SSFs dcamprof make-profile -c ssf.json -i StdA -g cc24-layout.json target.ti3 profile.json # Profile with color constant behavior (for reproduction work) dcamprof make-profile -C -g cc24-layout.json target.ti3 profile.json # Profile with custom weighting and report output dcamprof make-profile -g cc24-layout.json -r report-dir target.ti3 profile.json # Profile with LUT relaxation controls dcamprof make-profile -g cc24-layout.json -l relax.json target.ti3 profile.json ``` ### Response N/A (Command Line Tool) ### Error Handling N/A (Command Line Tool) ``` -------------------------------- ### Make Camera Profile Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Creates a camera profile from scanned data. Use '-i' to specify the illuminant (e.g., D50) and '-C' to disable chromatic adaptation if the illuminant is close to D50. Default smoothing is applied. ```bash dcamprof make-profile -i D50 -C cc24.ti3 final.json ``` -------------------------------- ### RawTherapee: Select White Balance Picker Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html In RawTherapee's color tab, use the "Spot WB" tool to select the appropriate white point in your image. This is critical for accurate color temperature assessment. ```bash Spot WB ``` -------------------------------- ### Create Profile with LUT Relaxation Controls Source: https://context7.com/beep6581/dcamprof/llms.txt Generates a camera profile with specific controls for LUT relaxation, affecting smoothness and accuracy trade-offs. ```bash dcamprof make-profile -g cc24-layout.json -l relax.json target.ti3 profile.json ``` -------------------------------- ### Copy profile for matrix import Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Prepare a separate file to store final matrices for use in subsequent profile generation. ```bash cp preliminary.json matrix.json ``` -------------------------------- ### Test DCP Profile (No Relax) Source: https://github.com/beep6581/dcamprof/blob/master/www/camera-profiling.html Tests the 'no-relax.dcp' profile using a specified input file ('light.sp') and test target ('combo.ti3'). The '-r dump1' option specifies the output directory for test results. ```bash dcamprof test-profile -r dump1 -i light.sp \ combo.ti3 no-relax.dcp ``` -------------------------------- ### Soft-proof with white-point adaptation Source: https://github.com/beep6581/dcamprof/blob/master/www/argyll-print.html Simulates paper look with white-point adaptation for a more realistic view, available via direct or printer-image paths. ```bash tifficc -v -w16 -t3 -d0 -e -i printer.icc -o*sRGB print.tif proof.tif ``` ```bash tifficc -v -w16 -t1 -b -m3 -d1 -e -p printer.icc -o*sRGB input.tif proof.tif ```