hdfit -- fit characteristic curve to density, exposure data
- Database[s] containing the density, log exposure information.
- function = "power"
- Type of curve to fit; chosen from "power", "legendre", "chebyshev", "spline1" or "spline3". Abbreviations are permitted.
- transform = "logopacitance"
- Transformation performed on the density prior to fitting. Chosen from "none", "logopacitance", "k50" or "k75".
- weighting = "none"
- Weights can be assigned to the independent variable for fitting a curve. Choices are "none", "user" and "calculated".
- order = 4
- Order of the fit.
- interactive = yes
- Fit the data interactively?
- device = "stdgraph"
- Interactive graphics device.
- cursor = "stdgcur"
- Source of cursor input.
Task hdfit is used to fit a curve to density and log exposure values in preparation for transforming an image from density to intensity. The log exposure and density are read from database . More than one database can be input, in which case one curve is fit to the combined data and the results written to each database in the list.
Weights can be applied to the independent variable of the fit. Weights can be changed interactively, and are originally chosen from "none", "user" and "calculated". A weights value can be calculated from the standard deviations, read from database , as weight = (normalized density) / sdev. If user weights are to be used, they are read from database record "weights" as "wts_vals" entries.
When interactive = yes, the HD curve is plotted and the cursor made available for interactively examining and altering the fit. The fitting function, transformation and order can be modified; data points can be added, deleted or edited. Four choices of independent variable are available in hdfit by means of the parameter transform . No transformation can take place, in which case the independent variable is the density. Other choices are the log opacitance or a Kaiser transform with alpha = 0.50 or 0.75. The default choice is to fit log exposure as a function of the log opacitance; this is traditionally known as the Baker-Seidel function.
Using the defaults as starting parameters, interactively fit a curve to the data points in db1. cl> hdfit db1 A sixth order power series function is fit in batch mode to the db1 data. cl> hdfit db1 order=6 interactive-