Torsten has a tool called symmetry_plane
that can be used to find the single plane of symmetry separating the image. The command line options look like this:
> symmetry_plane -h Compute volume image symmetry plane. (C) 1997-2007 Torsten Rohlfing [build 3866M] Usage: symmetry_plane [options] imagepath Supported options: -h, --help Print this help text. -v, --verbose Turn on verbosity mode. Optimization: -a, --accuracy Accuracy (final optimization step size in [mm]. -s, --sampling Resampled image resolution. -l, --levels Number of resolution levels. Pre-computed symmetry: --output-only Give symmetry parameters [Rho Theta Phi] as option, skip search. --output-only-file Read symmetry parameters from file, skip search. Data pre-processing: --min-value Force minumum data value. --max-value Force maximum data value. Output: -c, --cubic Use cubic rather than trilinear interpolation. -o, --outfile File name for symmetry plane parameter output. -P, --pad-out Padding value for output images. --mark-value Data value to mark (draw) symmetry plane. --write-marked File name for output image with marked symmetry plane. --write-aligned File name for symmetry plane-aligned output image. --mark-aligned Mark symmetry plane in aligned output image. --write-diff File name for mirror difference image. --write-mirror File name for image mirrored w.r.t. symmetry plane.
As you can see a variety of output options are available. The basic symmetry plane output looks like this:
plane { origin 209.6750641 209.6750641 40.5 rho 3.400000 theta -1.091245 phi 90.000000 normal 0.9998186339 -0.0190446653 -4.371139e-08 }
There is a simple function called FindPlaneFromPointAndNormal
in my Geometry.R of my R analysis suite to find the standard definition of the equation of a plane from this information.