--- a
+++ b/doc/generatekeys.1
@@ -0,0 +1,49 @@
+.\" Process this file with
+.\" groff -man -Tascii foo.1
+.TH GENERATEKEYS 1 "MAY 2004" autopano-sift "User Manual"
+generatekeys \- Generate SIFT keypoints from an image file
+.B generatekeys.exe
+.I imagefile
+.I keyfile[.gz]
+Generate SIFT key descriptors for an image. It reads in the image file,
+finds SIFT keypoints for descriptive image locations and outputs the SIFT
+descriptors to the keyfile. The image is internally doubled in size, as this
+increases the number of keypoints found. If you do not want this behaviour or
+want to downscale the picture, see the downscaleResolution option. The
+resulting keyfiles can be processed by the other utilities in the
+autopano-sift package.
+.IP imagefile
+The image file name that will be read in and processed. It can be in any
+format readable by the GDK pixbuf loaders. Usually that includes JPEG, PNG and
+.IP keyfile
+The name of the keypoint XML file to generate. When ".gz" is used at the end
+of the filename, the file is transparently compressed using the gzip
+compression. See
+.BR gzip (1)
+.IP downscaleResolution
+An optional integer width and height limitation. If given, the input image is
+downscaled so its larger dimension matches the given size in pixels.
+The smaller the downscale resolution, the smaller the memory
+requirements, but also less keypoints are found. In case no downscale
+resolution is given, the image is doubled in size prior to processing, which
+leads to substantly more keypoints. If you use 0 as downscaleResolution you
+can switch this behaviour off and the original image is used without applying
+any scaling.
+The memory requirements are quite big. If you have 256Mb of ram, you should go
+with a 700 downscale resolution, if you have 512Mb 1300 is a good value.
+Sebastian Nowozin <nowozin at cs dot tu dash berlin dot de>
+.BR autopano-complete (1),
+.BR autopano (1),
+.BR autopanog (1),
+.BR showone (1),
+.BR showtwo (1)