Documentation
¶
Overview ¶
Foveon Lab — try Sigma Photo Pro presets on SD1 / SD15 X3F files.
A local web app: it lists your X3F shots, renders each one through every SPP preset XML it finds (an emulation on the JPEG preview embedded in the X3F), lets you fine-tune a preset with sliders, and writes the result back as an SPP-importable XML.
Source Files
¶
- accurate.go
- aisettings.go
- appconfig.go
- artefact.go
- batch.go
- browse.go
- camfread.go
- cardimport.go
- coloursplit.go
- critique.go
- cull.go
- demo.go
- dngsource.go
- edgecross.go
- exportmem.go
- exportsource.go
- fieldstudy.go
- fileerr.go
- filmpresets.go
- fitraw.go
- geometry.go
- imagefiles.go
- lookfile.go
- looks.go
- main.go
- mem_other.go
- normalize.go
- nrscore.go
- photometa.go
- photos.go
- photos_other.go
- pickfolder.go
- pixmap.go
- pixmapstudy.go
- presetsidecar.go
- publish.go
- rawdecode.go
- refexclude.go
- rename_other.go
- series.go
- showcase.go
- sppcheck.go
- sppdecomp.go
- sppgaps.go
- sppgaps_gen.go
- thumbcache.go
- trash.go
- updater.go
Directories
¶
| Path | Synopsis |
|---|---|
|
Package agent runs a vision-model loop that looks at a photo, compares SPP presets rendered on it, fine-tunes the best one and reports why.
|
Package agent runs a vision-model loop that looks at a photo, compares SPP presets rendered on it, fine-tunes the best one and reports why. |
|
Package calib reverse-engineers SPP's adjustments by measurement: it generates a preset pack where each preset moves ONE control to a known value, and analyses the images SPP exports with those presets against SPP's own neutral export.
|
Package calib reverse-engineers SPP's adjustments by measurement: it generates a preset pack where each preset moves ONE control to a known value, and analyses the images SPP exports with those presets against SPP's own neutral export. |
|
Package dng reads DNG files: the TIFF structure, the raw sensor data (Bayer CFA or LinearRaw), a demosaic, and the colour development the DNG tags describe.
|
Package dng reads DNG files: the TIFF structure, the raw sensor data (Bayer CFA or LinearRaw), a demosaic, and the colour development the DNG tags describe. |
|
Package preset reads and writes Sigma Photo Pro (SPP) custom-setting XML files (<Custom><Adj><Color><Setting>…).
|
Package preset reads and writes Sigma Photo Pro (SPP) custom-setting XML files (<Custom><Adj><Color><Setting>…). |
|
Despeckle removes single-pixel outliers from a camera-linear image: a sample that sits far from its 3x3 neighbourhood's median, in one channel, is replaced by that median.
|
Despeckle removes single-pixel outliers from a camera-linear image: a sample that sits far from its 3x3 neighbourhood's median, in one channel, is replaced by that median. |
|
Package spp hands a preset to an installed Sigma Photo Pro 6.
|
Package spp hands a preset to an installed Sigma Photo Pro 6. |
|
tools
|
|
|
camfcheck
command
camfcheck compares x3f.CAMF's matrices with x3f_extract -meta's dump.
|
camfcheck compares x3f.CAMF's matrices with x3f_extract -meta's dump. |
|
camfdiff
command
camfdiff prints the CAMF matrices, CAMF properties and X3F properties that differ between two X3F files - e.g.
|
camfdiff prints the CAMF matrices, CAMF properties and X3F properties that differ between two X3F files - e.g. |
|
camfdump
command
camfdump prints summary statistics of named CAMF matrices of an X3F (count, mean, min, max per row), for research on calibration tables.
|
camfdump prints summary statistics of named CAMF matrices of an X3F (count, mean, min, max per row), for research on calibration tables. |
|
chartread
command
chartread reads an SPP export of a tools/synth chart: per patch, the mean linear output (central half of the patch) against the known raw input, then a least-squares 3x3 matrix raw->output over the unclipped patches and how much of SPP's response that matrix leaves unexplained.
|
chartread reads an SPP export of a tools/synth chart: per patch, the mean linear output (central half of the patch) against the known raw input, then a least-squares 3x3 matrix raw->output over the unclipped patches and how much of SPP's response that matrix leaves unexplained. |
|
compress-exports
command
compress-exports turns the SPP calibration exports (uncompressed 8-bit TIFF) into lossless PNG, about half the size.
|
compress-exports turns the SPP calibration exports (uncompressed 8-bit TIFF) into lossless PNG, about half the size. |
|
cscheck
command
cscheck compares exports of the same photo in different colour spaces (SPP: sRGB, Apple RGB, Adobe RGB, ColorMatch RGB, ProPhoto RGB), each through its own embedded ICC profile (primaries rXYZ/gXYZ/bXYZ and the rTRC/gTRC/bTRC tone curves), in XYZ (D50, the ICC connection space).
|
cscheck compares exports of the same photo in different colour spaces (SPP: sRGB, Apple RGB, Adobe RGB, ColorMatch RGB, ProPhoto RGB), each through its own embedded ICC profile (primaries rXYZ/gXYZ/bXYZ and the rTRC/gTRC/bTRC tone curves), in XYZ (D50, the ICC connection space). |
|
devcmp
command
devcmp compares x3f.CameraRGB with x3f_extract -color none (linear camera RGB after x3fuse's preprocessing) on a coarse grid: per-channel ratio and spread, and the levels used.
|
devcmp compares x3f.CameraRGB with x3f_extract -color none (linear camera RGB after x3fuse's preprocessing) on a coarse grid: per-channel ratio and spread, and the levels used. |
|
dngcheck
command
dngcheck writes an X3F's camera DNG (with its SPP-neutral profile, as the app's raw DNG export does), then develops that DNG the way the DNG spec tells a reader to (Lightroom / Camera Raw): white balance by AsShotNeutral, ForwardMatrix1 to XYZ D50, BaselineExposure, linear ProPhoto RGB clipped to 0..1, ProfileToneCurve with the DNG SDK's hue-preserving RGB tone, then sRGB.
|
dngcheck writes an X3F's camera DNG (with its SPP-neutral profile, as the app's raw DNG export does), then develops that DNG the way the DNG spec tells a reader to (Lightroom / Camera Raw): white balance by AsShotNeutral, ForwardMatrix1 to XYZ D50, BaselineExposure, linear ProPhoto RGB clipped to 0..1, ProfileToneCurve with the DNG SDK's hue-preserving RGB tone, then sRGB. |
|
exifcs
command
exifcs reports the colour space tags in the EXIF of an X3F's embedded JPEGs, and with -set writes a copy marked AdobeRGB: ColorSpace (0xA001: 1 = sRGB, 0xFFFF = uncalibrated, as cameras mark AdobeRGB) and the interoperability index (0x0001: "R98" = sRGB, "R03" = AdobeRGB).
|
exifcs reports the colour space tags in the EXIF of an X3F's embedded JPEGs, and with -set writes a copy marked AdobeRGB: ColorSpace (0xA001: 1 = sRGB, 0xFFFF = uncalibrated, as cameras mark AdobeRGB) and the interoperability index (0x0001: "R98" = sRGB, "R03" = AdobeRGB). |
|
foveonmodel
command
foveonmodel builds the Foveon sensor's layer spectral sensitivities from first principles and fits them to a camera's own colour matrix.
|
foveonmodel builds the Foveon sensor's layer spectral sensitivities from first principles and fits them to a camera's own colour matrix. |
|
irprobe
command
irprobe prints, over a grid of cells, an X3F's sensor layers balanced by the camera's Sunlight gains (bottom, middle, top; the input the infrared looks take), for calibrating the silicon model on full-spectrum shots.
|
irprobe prints, over a grid of cells, an X3F's sensor layers balanced by the camera's Sunlight gains (bottom, middle, top; the input the infrared looks take), for calibrating the silicon model on full-spectrum shots. |
|
isocmp
command
isocmp compares noise reduction on an ISO series of one scene (tripod, same light), each pipeline against its OWN low-ISO frame, on a 1:1 crop (no downscaling, which would average the noise away):
|
isocmp compares noise reduction on an ISO series of one scene (tripod, same light), each pipeline against its OWN low-ISO frame, on a 1:1 crop (no downscaling, which would average the noise away): |
|
noisebench
command
noisebench measures denoising on an ISO series of one static scene: the base-ISO frame is the reference, a high-ISO frame is developed the same way (native Go pipeline), denoised by a candidate method, exposure-matched and compared with CIEDE2000 on a full-resolution centre crop.
|
noisebench measures denoising on an ISO series of one static scene: the base-ISO frame is the reference, a high-ISO frame is developed the same way (native Go pipeline), denoised by a candidate method, exposure-matched and compared with CIEDE2000 on a full-resolution centre crop. |
|
rawcheck
command
rawcheck compares x3f.DecodeRaw with x3f_extract -unprocessed -no-crop, value by value, and times both.
|
rawcheck compares x3f.DecodeRaw with x3f_extract -unprocessed -no-crop, value by value, and times both. |
|
release
command
Command release builds, signs and publishes a Foveon Lab release.
|
Command release builds, signs and publishes a Foveon Lab release. |
|
rescmp
command
rescmp prints, per X3F, its resolution, how well x3f_extract's sRGB decode lines up with the camera JPEG (luma correlation and best shift on a normalised grid) and the per-channel colour ratio raw/JPEG in mid-tones.
|
rescmp prints, per X3F, its resolution, how well x3f_extract's sRGB decode lines up with the camera JPEG (luma correlation and best shift on a normalised grid) and the per-channel colour ratio raw/JPEG in mid-tones. |
|
rewrite
command
rewrite re-encodes an X3F's raw data with x3f's TRUE encoder and checks the copy decodes identically (and its preview/CAMF/PROP still read).
|
rewrite re-encodes an X3F's raw data with x3f's TRUE encoder and checks the copy decodes identically (and its preview/CAMF/PROP still read). |
|
sensfit
command
Package main rebuilds a spectral-sensitivity curve from the fragments of a maker's graph: the short 4 pt fills E-7022 (Gold 200) draws the three curves with, or a curve split into pieces.
|
Package main rebuilds a spectral-sensitivity curve from the fragments of a maker's graph: the short 4 pt fills E-7022 (Gold 200) draws the three curves with, or a curve split into pieces. |
|
setprop
command
setprop writes a copy of an X3F with one PROP property changed, for black-box tests of what SPP does with a property (e.g.
|
setprop writes a copy of an X3F with one PROP property changed, for black-box tests of what SPP does with a property (e.g. |
|
sharpfit
command
sharpfit measures how much Sigma Photo Pro sharpens its neutral export relative to Foveon Lab's raw path, and fits an unsharp mask that matches it.
|
sharpfit measures how much Sigma Photo Pro sharpens its neutral export relative to Foveon Lab's raw path, and fits an unsharp mask that matches it. |
|
showcase
command
tools/showcase runs the app's showcase command from anywhere in the tree.
|
tools/showcase runs the app's showcase command from anywhere in the tree. |
|
speck
command
Command speck counts single-pixel outliers in an X3F at the stage where they are born: after the colour matrix, before any tone.
|
Command speck counts single-pixel outliers in an X3F at the stage where they are born: after the colour matrix, before any tone. |
|
sppgap
command
sppgap turns a spp-check -save JSON into the body table the app shows in the photo info: one line per camera body, the mean 8-bit error against Sigma Photo Pro and the number of photos that number rests on.
|
sppgap turns a spp-check -save JSON into the body table the app shows in the photo info: one line per camera body, the mean 8-bit error against Sigma Photo Pro and the number of photos that number rests on. |
|
synth
command
synth writes synthetic X3F test charts for measuring Sigma Photo Pro as a black box: a real file's container and calibration, its sensor margins (dark shields, so the black level stays real), and an active area filled with flat patches of known raw values.
|
synth writes synthetic X3F test charts for measuring Sigma Photo Pro as a black box: a real file's container and calibration, its sensor margins (dark shields, so the black level stays real), and an active area filled with flat patches of known raw values. |
|
wbcodes
command
Command wbcodes fits SPP's preset WhiteBalance codes from exports of the same photo at "as shot" (K01) and at each code (K02..K07): the colour mapping K01 -> Kxx, as the calibration fits its W steps.
|
Command wbcodes fits SPP's preset WhiteBalance codes from exports of the same photo at "as shot" (K01) and at each code (K02..K07): the colour mapping K01 -> Kxx, as the calibration fits its W steps. |
|
x3fprops
command
x3fprops prints an X3F's PROP entries and its CAMF entries (property lists, matrices, text) whose name or key matches a regular expression.
|
x3fprops prints an X3F's PROP entries and its CAMF entries (property lists, matrices, text) whose name or key matches a regular expression. |
|
Package x3f reads the container structure of Sigma/Foveon X3F raw files: the section directory, the embedded JPEG previews and the PROP metadata.
|
Package x3f reads the container structure of Sigma/Foveon X3F raw files: the section directory, the embedded JPEG previews and the PROP metadata. |
Click to show internal directories.
Click to hide internal directories.
