<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.panotools.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.panotools.org/api.php?action=feedcontributions&amp;user=Jwatters&amp;feedformat=atom</id>
		<title>PanoTools.org Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.panotools.org/api.php?action=feedcontributions&amp;user=Jwatters&amp;feedformat=atom"/>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Special:Contributions/Jwatters"/>
		<updated>2013-05-23T23:32:44Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.19.0</generator>

	<entry>
		<id>http://wiki.panotools.org/Cpclean</id>
		<title>Cpclean</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Cpclean"/>
				<updated>2011-05-27T16:56:21Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: step 2 not done if &amp;gt;1 image chains.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''cpclean''' is a command-line tool that implements the 'bad' [[control points]] pruning available within the [[Hugin]] GUI. It is similar conceptually to [[apclean]], but with some extra functionality. Both tools use a statistical filter to remove points with an error above a statistical threshold.&lt;br /&gt;
&lt;br /&gt;
The idea is to remove all non-credible control points.  To do this it uses a two step process to remove bad control points. &lt;br /&gt;
&lt;br /&gt;
===Step 1===&lt;br /&gt;
optimises each pair of photos one at a time and deletes all points that can't be made to fit.&lt;br /&gt;
&lt;br /&gt;
===Step 2===&lt;br /&gt;
optimises the whole project together using more conservative assumptions and deletes another round of points. If there is more than one image chain present this step is not done.&lt;br /&gt;
&lt;br /&gt;
===result===&lt;br /&gt;
The .pto project file is returned unoptimised, the only change is that there are less control points, this means the project doesn't have to be optimised before you start.&lt;br /&gt;
&lt;br /&gt;
By using this optimisation step '''cpclean''' is able to look not just at the current project settings and find 'bad' points, but is able to find points that are 'bad' under a range of circumstances.&lt;br /&gt;
&lt;br /&gt;
===usage===&lt;br /&gt;
A typical usage would be:&lt;br /&gt;
&lt;br /&gt;
  cpclean -o output.pto project.pto&lt;br /&gt;
&lt;br /&gt;
===Options===&lt;br /&gt;
Vary the threshold with the -n parameter (defaults to 2, i.e. points with a distance error greater than twice the standard deviation are deleted):&lt;br /&gt;
&lt;br /&gt;
  cpclean -n 1 -o output.pto project.pto&lt;br /&gt;
&lt;br /&gt;
Do only pairwise optimisation (skip step 2):&lt;br /&gt;
&lt;br /&gt;
  cpclean -p -o output.pto project.pto&lt;br /&gt;
&lt;br /&gt;
Do only whole panorama optimasation (skip step 1):&lt;br /&gt;
&lt;br /&gt;
  cpclean -w -o output.pto project.pto&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''cpclean''' is based on [[ptoclean]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;br /&gt;
[[Category:Software:Hugin]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Hugin</id>
		<title>Hugin</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Hugin"/>
				<updated>2011-05-27T16:51:57Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: add checkpto&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Hugin''' {{Glossary|is an Open Source panorama stitcher and graphical user interface (GUI) for [[Panorama tools]]|1}}. It also provides a number of additional components and command line tools.&lt;br /&gt;
&lt;br /&gt;
== About Hugin ==&lt;br /&gt;
&lt;br /&gt;
Although Hugin is essentially a panorama stitcher, like other [[GUI front-ends]] it has a range of advanced features:&lt;br /&gt;
&lt;br /&gt;
Among the Hugin workflow options, it is possible to correct [[Exposure correction|exposure]], [[Vignetting]] and [[White balance]] between photos; generate [[HDR]],  [[w:Exposure Fusion|exposure fused]] or [[w:Focus stacking|focus stacked]] output from [[bracketing|bracketed]] photos; or use [[16bit]] and [[HDR]] input data natively.&lt;br /&gt;
&lt;br /&gt;
Photos can be digital or scanned, and taken with any kind of camera. A full range of lenses are supported, from simple cameraphones to obscure [[fisheye]] lenses.  Hugin supports various output [[projections]] including a range of spherical, cartographic, and camera projections.&lt;br /&gt;
&lt;br /&gt;
Hugin supports panoramas taken with multiple rows of photos, with or without bracketing.  Bracketed photos can be handheld, taken using a DSLR bracketing function, or as consecutive panoramas shot at different EV exposure levels.  Hugin can produce successful panoramas shot with cameras that always shoot using auto-exposure and auto-whitebalance.&lt;br /&gt;
&lt;br /&gt;
Starting with version 2011.2.0, Hugin is scriptable in Python.  The scripting functionality is still in its infancy and requires more development and testing.  For now it is available only in Linux and Windows, and currently there is no feedback from the plugin apart from it's success or failure, which is communicated in a dialog. If you're on Linux, you can start hugin from the command line and switch to the window you started it from while the plugin is running - then you'll see any console output it may produce.&lt;br /&gt;
&lt;br /&gt;
* [http://hugin.sourceforge.net Hugin homepage] on SourceForge. Screenshots, Tutorials, Documentation and Links.&lt;br /&gt;
* [http://sourceforge.net/projects/hugin Hugin project summary page] on SourceForge. Downloads.&lt;br /&gt;
* [https://launchpad.net/hugin Hugin on Launchpad]. Bug database and Feature requests.&lt;br /&gt;
* [[Hugin FAQ]] Frequently asked questions about Hugin.&lt;br /&gt;
&lt;br /&gt;
== User interface ==&lt;br /&gt;
&lt;br /&gt;
* [[Hugin Main window]]&lt;br /&gt;
* [[Hugin Assistant tab]]&lt;br /&gt;
* [[Hugin Images tab]]&lt;br /&gt;
* [[Hugin Camera and Lens tab]]&lt;br /&gt;
* [[Hugin Crop tab]]&lt;br /&gt;
* [[Hugin Mask tab]]&lt;br /&gt;
* [[Hugin Control Points tab]]&lt;br /&gt;
* [[Hugin Optimizer tab]]&lt;br /&gt;
* [[Hugin Exposure tab]]&lt;br /&gt;
* [[Hugin Stitcher tab]]&lt;br /&gt;
* [[Hugin Batch Processor]]&lt;br /&gt;
* [[Hugin Preferences]]&lt;br /&gt;
* [[Hugin Preview window]]&lt;br /&gt;
* [[Hugin Fast Preview window]]&lt;br /&gt;
* [[Hugin Control Points table]]&lt;br /&gt;
* [[Hugin Reset Values window]]&lt;br /&gt;
* [[Hugin Keyboard shortcuts]]&lt;br /&gt;
* [[Hugin Scripting Interface]]&lt;br /&gt;
&lt;br /&gt;
== Hugin components ==&lt;br /&gt;
&lt;br /&gt;
The following tools are part of the Hugin suite:&lt;br /&gt;
&lt;br /&gt;
* [[hugin]] the gui front end.&lt;br /&gt;
* [[nona]] a command-line replacement for [[PTStitcher]].&lt;br /&gt;
* [[fulla]] correction of [[barrel distortion]], [[chromatic aberration]] and [[vignetting]].&lt;br /&gt;
* [[nona_gui]] a version of [[nona]] with simple GUI progress dialogs, similar to the windows version of [[PTStitcher]].&lt;br /&gt;
* [[autooptimiser]] a tool with the same interface as [[PTOptimizer]] except using pairwise optimization which doesn't require any manual pre-placement.&lt;br /&gt;
* [[align_image_stack]] a tool to automate the process to [[align a stack of photos]].&lt;br /&gt;
* [[tca_correct]] a tool to automatically generate [[chromatic aberration]] correction parameters for use with [[fulla]].&lt;br /&gt;
* [[MatchPoint|matchpoint]] feature identification.&lt;br /&gt;
* [[pto2mk]] generation of Makefiles for command-line stitching.&lt;br /&gt;
* [[cpfind]] command line tool to find control points&lt;br /&gt;
* [[icpfind]] command line tool for using heuristic control point matching like inside [[hugin]Hugin GUI]&lt;br /&gt;
* [[cpclean]] command line tool to remove control points with improbable error distances&lt;br /&gt;
* [[checkpto]] command line tool to examine project file and reports back the number of image chains present&lt;br /&gt;
* [[calibrate_lens]] automatic lens calibration using straight-line detection&lt;br /&gt;
* [[vig_optimize]] command line tool to estimate photometric parameters.&lt;br /&gt;
* [[hugin_hdrmerge]] merges multiple exposures to [[HDR]] using Khan anti-ghosting algorithm&lt;br /&gt;
* [[hugin_stitch_project]] a GUI tool to stitch a single Hugin .pto project.&lt;br /&gt;
* [[celeste_standalone]] removes cloud-like control points from project files.&lt;br /&gt;
* [[Hugin Batch Processor|PTBatcherGUI]] a GUI queue manager for stitching multiple Hugin projects.&lt;br /&gt;
* [[PTBatcher]] command-line access to the [[hugin Batch Processor]] stitching queue.&lt;br /&gt;
* [[deghosting_mask]] Creates mask for removing ghosting in bracketed images&lt;br /&gt;
* [[pano_modify]] Change output parameters of project file&lt;br /&gt;
* [[pano_trafo]] Transform image coordinates&lt;br /&gt;
* [[pto_merge]] Merges two or more Hugin project files&lt;br /&gt;
* [[panoglview]] OpenGL panorama viewer stored in sourceforge SVN alongside [[hugin]] which must be built separately.&lt;br /&gt;
* [[autopano-sift-C]] version of [[autopano-sift]] written in C, also needs to be built separately.&lt;br /&gt;
&lt;br /&gt;
More information, documentation and tutorials are available on the [http://hugin.sourceforge.net/ project website].&lt;br /&gt;
&lt;br /&gt;
Like other [[GUI front-ends]], '''Hugin''' provides an easy-to-use unified point-and-click interface to a whole range of other command-line tools including:&lt;br /&gt;
&lt;br /&gt;
* [[autopano-sift]], [[autopano-sift-C]], [[panomatic]] or [[autopano]] for automatic creation of [[control points]] (note that an external control-point generator is no longer required by Hugin).&lt;br /&gt;
* [[enblend]] and [[enfuse]] for seamless blending of output images.&lt;br /&gt;
&lt;br /&gt;
The Hugin project also provides open source replacements for the small number of closed source components of [[Panorama tools]], especially [[PTStitcher]].&lt;br /&gt;
A PTStitcher replacement called [[nona]] and a PTOptimizer replacement called [[autooptimiser]] have been developed, supporting their most important features.&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
&lt;br /&gt;
Hugin is Open Source, and like every community-developed software very much dependent on voluntary contributions of resources. If you have coding skills, you are welcome to look at the source code and contribute to it. Even if you don't have coding skills, you most likely have some skills that the project could use and you are more than welcome to contribute your time. The tasks requiring attention change frequently and so do the required skillset and resources. Find more about the [[Development of Open Source tools|development process]].&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* [http://hugin.sourceforge.net Hugin homepage] for Screenshots, Tutorials, Documentation and Links.&lt;br /&gt;
* [http://sourceforge.net/projects/hugin Hugin Sourceforge project] for Downloads.&lt;br /&gt;
* [https://launchpad.net/hugin Hugin's bug tracker] for bug reports and feature requests.&lt;br /&gt;
* [http://hugin.hg.sourceforge.net/hgweb/hugin/ Sourceforge HG] to browse the Hugin source-code in Mercurial.&lt;br /&gt;
* [http://groups.google.com/group/hugin-ptx hugin-ptx GoogleGroup] to contribute to development and peer support.&lt;br /&gt;
&lt;br /&gt;
== Supported operating systems ==&lt;br /&gt;
* [[windows software|Windows]]&lt;br /&gt;
* [[Unix software|Linux and Unix]]&lt;br /&gt;
* [[Mac software|Mac OS X]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;br /&gt;
[[Category:Software:Hugin]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Checkpto</id>
		<title>Checkpto</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Checkpto"/>
				<updated>2011-05-27T16:13:30Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Initial creation of checkpto page.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''checkpto''' is a command-line tool and Helper program for [[Hugin]]'s Makefile assistant that examines a Hugin's project file and reports back the number of image chains or parts present. It does this by examining how images are connected with control points. If images are not connected together they can not be positioned correctly by optimizing their position.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===usage===&lt;br /&gt;
A typical usage would be:&lt;br /&gt;
&lt;br /&gt;
  checkpto project.pto&lt;br /&gt;
&lt;br /&gt;
===return===&lt;br /&gt;
&lt;br /&gt;
 0   If only one image chain present.&lt;br /&gt;
 1   If error.&lt;br /&gt;
 &amp;gt;1  If more than one image chain present.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;br /&gt;
[[Category:Software:Hugin]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Cpclean</id>
		<title>Cpclean</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Cpclean"/>
				<updated>2011-05-26T21:33:09Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Add -p and -w options&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''cpclean''' is a command-line tool that implements the 'bad' [[control points]] pruning available within the [[Hugin]] GUI. It is similar conceptually to [[apclean]], but with some extra functionality. Both tools use a statistical filter to remove points with an error above a statistical threshold.&lt;br /&gt;
&lt;br /&gt;
The idea is to remove all non-credible control points.  To do this it uses a two step process to remove bad control points. &lt;br /&gt;
&lt;br /&gt;
===Step 1===&lt;br /&gt;
optimises each pair of photos one at a time and deletes all points that can't be made to fit.&lt;br /&gt;
&lt;br /&gt;
===Step 2===&lt;br /&gt;
optimises the whole project together using more conservative assumptions and deletes another round of points. &lt;br /&gt;
&lt;br /&gt;
===result===&lt;br /&gt;
The .pto project file is returned unoptimised, the only change is that there are less control points, this means the project doesn't have to be optimised before you start.&lt;br /&gt;
&lt;br /&gt;
By using this optimisation step '''cpclean''' is able to look not just at the current project settings and find 'bad' points, but is able to find points that are 'bad' under a range of circumstances.&lt;br /&gt;
&lt;br /&gt;
===usage===&lt;br /&gt;
A typical usage would be:&lt;br /&gt;
&lt;br /&gt;
  cpclean -o output.pto project.pto&lt;br /&gt;
&lt;br /&gt;
===Options===&lt;br /&gt;
Vary the threshold with the -n parameter (defaults to 2, i.e. points with a distance error greater than twice the standard deviation are deleted):&lt;br /&gt;
&lt;br /&gt;
  cpclean -n 1 -o output.pto project.pto&lt;br /&gt;
&lt;br /&gt;
Do only pairwise optimisation (skip step 2):&lt;br /&gt;
&lt;br /&gt;
  cpclean -p -o output.pto project.pto&lt;br /&gt;
&lt;br /&gt;
Do only whole panorama optimasation (skip step 1):&lt;br /&gt;
&lt;br /&gt;
  cpclean -w -o output.pto project.pto&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''cpclean''' is based on [[ptoclean]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;br /&gt;
[[Category:Software:Hugin]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Cpfind</id>
		<title>Cpfind</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Cpfind"/>
				<updated>2011-04-15T20:14:12Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: ransacmodel to ransacmode&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General and description =&lt;br /&gt;
'''Cpfind''' is a control point detector for [[hugin]]. It expects a project file as input and write a project file with control points on success. The general usage is&lt;br /&gt;
      cpfind -o output.pto input.pto&lt;br /&gt;
Internal the control point detector algorithm is divided into 2 parts: &lt;br /&gt;
* The first step is the feature description: In this step the images of the project file are loaded and so called keypoints are searched. They describe destinctive features in the image. Cpfind is using a gradient based descriptor for the feature description of the keypoints. &lt;br /&gt;
* In a second step, the feature matching, all keypoints of two images are matched against each other to find features which are on both images. If this matching was successfull two keypoints in the two images become one control point.&lt;br /&gt;
&lt;br /&gt;
= Usage =&lt;br /&gt;
== Rectilinear and fisheye images ==&lt;br /&gt;
Cpfind can find control points in rectilinear and fisheye images. To achieve good control points images with a high horizontal field of view (e.g. ultra wide rectilinear or fisheye) are therefor remapped into a conformal space (cpfind is using the [[Projection#Stereographic_projection|stereographic projection]]) and the feature matching occurs in this space. Before writing the control points the coordinates are remapped back to the image space. This happens automatic depending on the information about the lens in the input project file. So check that your input project file contains reasonable information about the used lens.&lt;br /&gt;
&lt;br /&gt;
'''WARNING:''' cpfind in hugin 2010.4 has some bugs and won't work properly with fisheye images. Use a 2010.5 development snapshot (rev c137328f1418, from 2011-01-20) or wait for the next release.&lt;br /&gt;
&lt;br /&gt;
== Using celeste ==&lt;br /&gt;
Outdoor panorama often contains clouds. Clouds are bad areas for setting control points because they are moving object. Cpfind can use the same algorithm as [[celeste_standalone]] to masked out areas which contains clouds. (This is only done internal for the keypoint finding step and does not change the alpha channel of your image. If you want to generate a mask image use [[celeste_standalone]]). To run cpfind with celeste use&lt;br /&gt;
    cpfind --celeste -o output.pto input.pto&lt;br /&gt;
Using '''cpfind''' with integrated celeste should be superior against using '''cpfind''' and [[celeste_standalone]] sequential. When running '''cpfind with celeste''' areas of clouds, which often contains keypoints with a high quality measure, are disregarded and areas without clouds are used instead. When running '''cpfind without celeste''' also keypoints on clouds are found. When afterwards running [[celeste_standalone]] these control points are removed. In the worst case all control points of a certain image pair are removed.&lt;br /&gt;
&lt;br /&gt;
So running '''cpfind with celeste''' leads to a better &amp;quot;control point quality&amp;quot; for outdoor panorama (e.g. panorama with clouds). Running '''cpfind with celeste''' takes longer than '''cpfind''' alone. So for indoor panorama this option does not need to specified (because of longer computation time).&lt;br /&gt;
&lt;br /&gt;
The celeste step can be fine tuned by the parameters --celesteRadius and --celesteThreshold.&lt;br /&gt;
&lt;br /&gt;
== Matching strategy ==&lt;br /&gt;
=== All pairs ===&lt;br /&gt;
This is the default matching strategy. Here all image pairs are matched against each other. E.g. if your project contains 5 images then '''cpfind''' matches the image pairs: 0-1, 0-2, 0-3, 0-4, 1-2, 1-3, 1-4, 2-3, 2-4 and 3-4&lt;br /&gt;
&lt;br /&gt;
This strategy works for all shooting strategy (single-row, multi-row, unordered). It finds (nearly) all connected image pairs. But it is computational expensive for projects with many images, because it test many image pairs which are not connected.&lt;br /&gt;
&lt;br /&gt;
===  Linear match ===&lt;br /&gt;
&lt;br /&gt;
This matching strategy works best for single row panoramas:&lt;br /&gt;
    cpfind --linearmatch -o output.pto input.pto&lt;br /&gt;
This will only detect matches between adjacent images, e.g. for the 5 image example it will matches images pairs 0-1, 1-2, 2-3 and 3-4. The matching distance can be increased with the switch --linearmatchlen. E.g. with --linearmatchlen 2 '''cpfind''' will match a image with the next image and the image after next, in our example it would be 0-1, 0-2, 1-2, 1-3, 2-3, 2-4 and 3-4.&lt;br /&gt;
&lt;br /&gt;
=== Multirow matching===&lt;br /&gt;
&lt;br /&gt;
This is an optimized matching strategy for single and multi-row panorama:&lt;br /&gt;
    cpfind --multirow -o output.pto input.pto&lt;br /&gt;
The algorithm is the same as described in [[Hugin_Parameters_for_Control_Point_Detectors_dialog#Multi-row_panorama|multi-row panorama]]. By integrating this algorithm into '''cpfind''' it is faster by using several cores of modern CPUs and don't caching the keypoints to disc (which is time consuming). If you want to use this multi-row matching inside [[hugin]] set the control point detector type to [[Hugin_Parameters_for_Control_Point_Detectors_dialog#All_images_at_once|All images at once]].&lt;br /&gt;
&lt;br /&gt;
=== Keypoints caching to disc ===&lt;br /&gt;
&lt;br /&gt;
The calculation of keypoints takes some time. So '''cpfind''' offers the possibility to save the keypoints to a file and reuse them later again. With --kall the keypoints for all images in the project are saved to disc. If you only want the keypoints of particular image use the parameter -k with the image number:&lt;br /&gt;
    cpfind --kall input.pto&lt;br /&gt;
    cpfind -k 0 -k 1 input.pto&lt;br /&gt;
The keypoint files are saved by default into the same directory as the images with the extension .key. In this case no matching of images occurs and therefore no output project file needs to specified. If '''cpfind''' finds keyfiles for an image in the project it will use them automatically and not run the feature descriptor again on this image.&lt;br /&gt;
If you want to save them to annother directory use the --keypath switch. &lt;br /&gt;
&lt;br /&gt;
This procedure can also be automate with the switch --cache:&lt;br /&gt;
    cpfind --cache -o output.pto input.pto&lt;br /&gt;
In this case it tries to load existing keypoint files. For images, which don't have a keypoint file, the keypoints are detected and saved to the file. Then it matches all loaded and newly found keypoints and writes the output project.&lt;br /&gt;
&lt;br /&gt;
If you don't need the keyfile longer, the can be deleted automatic by&lt;br /&gt;
    cpfind --clean input.pto&lt;br /&gt;
&lt;br /&gt;
= Extended options =&lt;br /&gt;
== Feature description ==&lt;br /&gt;
&lt;br /&gt;
For speed reasons '''cpfind''' is using images, which are scaled to their half width and height, to find keypoints. With the switch --fullscale '''cpfind''' is working on the full scale images. This takes longer but can provide &amp;quot;better&amp;quot; and/or more control points.&lt;br /&gt;
&lt;br /&gt;
The feature description step can be fine-tuned by the parameters:&lt;br /&gt;
&lt;br /&gt;
--sieve1width &amp;lt;int&amp;gt;           Sieve 1: Number of buckets on width (default: 10)&lt;br /&gt;
&lt;br /&gt;
--sieve1height &amp;lt;int&amp;gt;          Sieve 1: Number of buckets on height (default: 10)&lt;br /&gt;
&lt;br /&gt;
--sieve1size &amp;lt;int&amp;gt;            Sieve 1: Max points per bucket (default: 100)&lt;br /&gt;
&lt;br /&gt;
--kdtreesteps &amp;lt;int&amp;gt;           KDTree: search steps (default: 200)&lt;br /&gt;
&lt;br /&gt;
--kdtreeseconddist &amp;lt;double&amp;gt;   KDTree: distance of 2nd match (default: 0.25)&lt;br /&gt;
&lt;br /&gt;
'''Cpfind''' stores maximal sieve1width * sieve1height * sieve1size keypoints per image. If you have only a small overlap, e.g. for 360 degree panorama shoot with fisheye images, you can get better results if you increase sieve1size. You can also try to increase sieve1width and/or sieve1height.&lt;br /&gt;
&lt;br /&gt;
Effectively cpfind splits your image in rectangles: sieve1width horizontally by sieve1height vertically. It will try to find sieve1size interest points. This ensures a reasonably uniform distribution of interest points over your image. These features will be matched in the matching step. With the default parameters, up to 10000 interest points will be used in the feature matching step.&lt;br /&gt;
&lt;br /&gt;
== Feature matching ==&lt;br /&gt;
&lt;br /&gt;
Fine-tuning of the matching step by the following parameters:&lt;br /&gt;
&lt;br /&gt;
--ransaciter &amp;lt;int&amp;gt;            [http://en.wikipedia.org/wiki/RANSAC Ransac]: iterations (default: 1000)&lt;br /&gt;
&lt;br /&gt;
--ransacdist &amp;lt;int&amp;gt;            Ransac: homography estimation distance threshold (pixels) (default: 25)&lt;br /&gt;
&lt;br /&gt;
--ransacmode &amp;lt;string&amp;gt;        Select the mode used in the ransac step. Possible values: auto, hom, rpy, rpyv, rpyb (default: auto)&lt;br /&gt;
&lt;br /&gt;
* hom: Assume a homography. Only applicable for non-wide angle views. Uses the original panomatic code. It is also more flexible than required and can generate false matches, particlarly if most of the matches are located on a single line.&lt;br /&gt;
&lt;br /&gt;
* rpy: Align images using roll, pitch and yaw. This requires a good estimate for the horizontal field of view (and distortion, for  heavily distorted images). It is the prefered mode if a calibrated lens is used, or the HFOV could be read successfully from the EXIF data.&lt;br /&gt;
&lt;br /&gt;
* rpyv: Align pair by optimizing roll, pitch, yaw and field of view. Should work without prior knowledge of the field of view, but might fail more often, due to error function used in the panotools optimizer, it tends to shrink the fov to 0.&lt;br /&gt;
&lt;br /&gt;
* rpyvb: Align pair by optimizing roll, pitch, yaw, field of view and the &amp;quot;b&amp;quot; distortion parameter.  Probaby very fragile, just implemented for testing.&lt;br /&gt;
&lt;br /&gt;
* auto: Use homography for images with hfov &amp;lt; 65 degrees and rpy otherwise.&lt;br /&gt;
&lt;br /&gt;
--minmatches &amp;lt;int&amp;gt;            Minimum matches (default: 4)&lt;br /&gt;
&lt;br /&gt;
--sieve2width &amp;lt;int&amp;gt;           Sieve 2: Number of buckets on width (default: 5)&lt;br /&gt;
&lt;br /&gt;
--sieve2height &amp;lt;int&amp;gt;          Sieve 2: Number of buckets on height (default: 5)&lt;br /&gt;
&lt;br /&gt;
--sieve2size &amp;lt;int&amp;gt;            Sieve 2: Max points per bucket (default: 1)&lt;br /&gt;
&lt;br /&gt;
'''Cpfind''' generates between minmatches and sieve2width * sieve2height * sieve2size control points between an image pair. (Default setting is between 4 and 25 (=5*5*1) control points per image pair.) &lt;br /&gt;
If less then minmatches control points are found for a given image pairs these control points are disregarded and this image pair is considered as not connected. For narrow overlaps you can try to decrease minmatches, but this increases the risk of getting wrong control points.&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Hugin]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/PTtiff2psd</id>
		<title>PTtiff2psd</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/PTtiff2psd"/>
				<updated>2011-02-13T21:39:37Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: added current and new options.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''PTtiff2psd''' is a utility to convert a set of [[TIFF]] files into a multi-layer&lt;br /&gt;
[[PSD]] file suitable for opening in [[Photoshop]] or the [[Gimp]].  It was written&lt;br /&gt;
by Daniel M German.  A multi-platform version is now included with the [[pano12]]&lt;br /&gt;
library available at [http://panotools.sf.net/ Sourceforge].&lt;br /&gt;
&lt;br /&gt;
The functionality is similar to Erik Krause's Photoshop [[stitching actions]], except&lt;br /&gt;
'''PTtiff2psd''' is a standalone command-line program.&lt;br /&gt;
&lt;br /&gt;
Many tools such as [[PTStitcher]], [[nona]], [[PTGui]], [[PTmender]] and&lt;br /&gt;
[[PTblender]] generate output in the form of multiple [[TIFF]] files that can be used&lt;br /&gt;
as input for '''PTtiff2psd'''.&lt;br /&gt;
&lt;br /&gt;
Usage is like so:&lt;br /&gt;
&lt;br /&gt;
  PTtiff2psd [options] &amp;lt;tiffFiles&amp;gt;+&lt;br /&gt;
  Options:&lt;br /&gt;
Options:&lt;br /&gt;
        -o &amp;lt;filename&amp;gt;           Output filename (default merged.psd)&lt;br /&gt;
        -b &amp;lt;blendingmode&amp;gt;       Specify blending mode for layers (use -h to display them)&lt;br /&gt;
        -f                      Force processing (do not stop at warnings)&lt;br /&gt;
        -s                      Stack them&lt;br /&gt;
        -q                      Quiet run&lt;br /&gt;
        -r                      Reverse layers&lt;br /&gt;
        -8                      Reduce image to 8bit per channel&lt;br /&gt;
        -B                      Force Big, PSB file format&lt;br /&gt;
        -h                      Show this message&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Vig_optimize</id>
		<title>Vig optimize</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Vig_optimize"/>
				<updated>2010-09-28T23:00:19Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: correct exposure value&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With the 0.7.0 [[hugin]] release, photometric parameters such as exposure (EV), [[vignetting]], [[white balance]] and [[camera response curve]] can be optimised in a similar way to [[lens distortion]].  These photometric parameters can be edited in the [[hugin Camera and Lens tab]] or calculated automatically in the [[hugin Exposure tab]].&lt;br /&gt;
&lt;br /&gt;
For this to work, photos first have to be aligned with correct relative positions and lens parameters. hugin will compare randomly selected groups of pixels from matching areas in each of the overlapping photos.  Exposure and response curve can be calculated with any kind of overlap, however vignetting calculations require partial overlap, ideally around 50%.&lt;br /&gt;
&lt;br /&gt;
As well as the GUI process of optimisation/calculation in the [[hugin Exposure tab]], photometric calculation can also be performed on the command-line with the '''vig_optimize''' tool. This functionally is configured via 'v' ''variable'' lines in the .pto project file in a similar way to the [[autooptimiser]] tool:&lt;br /&gt;
&lt;br /&gt;
* The [[camera response curve]] is simplified using the [[EMoR]] sensor model which reduces the variation to five numbers, these are the '''Ra''', '''Rb''', '''Rc''', '''Rd''' &amp;amp; '''Re''' image (i) parameters (the default values of 0.0 are equivalent to an 'average' generic sensor).&lt;br /&gt;
* The [[vignetting]] model is represented by a polynomial with four parameters: '''Va''' (this is always 1.0 and doesn't need to be optimised) and '''Vb''', '''Vc''' &amp;amp; '''Vd''' (which default to 0.0 - equivalent to no vignetting).  The vignetting centre can also be different from the geometrical centre, this is specified by '''Vx''' &amp;amp; '''Vy''' (both default to 0.0).&lt;br /&gt;
* Exposure (EV) is represented by a single value '''Eev''' (defaults 0.0, equivalent to no-change).&lt;br /&gt;
* The [[white balance]] is represented by multipliers for the red and blue channels '''Er''' and '''Eb''' (the defaults of 1.0 are equivalent to no-change).&lt;br /&gt;
&lt;br /&gt;
A typical 'v' ''variable'' line configuration would look like this, i.e. optimise camera response curve and vignetting for image ''0'' and exposure for images ''1'', ''2'', ''3'' and ''4'':&lt;br /&gt;
&lt;br /&gt;
 v Ra0 Rb0 Rc0 Rd0 Re0 Vb0 Vc0 Vd0&lt;br /&gt;
 v Eev1 Eev2 Eev3 Eev4&lt;br /&gt;
&lt;br /&gt;
(vignetting centre and white balance are left unchanged)&lt;br /&gt;
&lt;br /&gt;
The .pto project itself can then be optimised with '''vig_optimize''' on the command-line like so:&lt;br /&gt;
&lt;br /&gt;
  vig_optimize -o myproject.pto myproject.pto&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;br /&gt;
[[Category:Software:Hugin]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Vig_optimize</id>
		<title>Vig optimize</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Vig_optimize"/>
				<updated>2010-09-28T22:52:10Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: fix the exposure variable in example&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With the 0.7.0 [[hugin]] release, photometric parameters such as exposure (EV), [[vignetting]], [[white balance]] and [[camera response curve]] can be optimised in a similar way to [[lens distortion]].  These photometric parameters can be edited in the [[hugin Camera and Lens tab]] or calculated automatically in the [[hugin Exposure tab]].&lt;br /&gt;
&lt;br /&gt;
For this to work, photos first have to be aligned with correct relative positions and lens parameters. hugin will compare randomly selected groups of pixels from matching areas in each of the overlapping photos.  Exposure and response curve can be calculated with any kind of overlap, however vignetting calculations require partial overlap, ideally around 50%.&lt;br /&gt;
&lt;br /&gt;
As well as the GUI process of optimisation/calculation in the [[hugin Exposure tab]], photometric calculation can also be performed on the command-line with the '''vig_optimize''' tool. This functionally is configured via 'v' ''variable'' lines in the .pto project file in a similar way to the [[autooptimiser]] tool:&lt;br /&gt;
&lt;br /&gt;
* The [[camera response curve]] is simplified using the [[EMoR]] sensor model which reduces the variation to five numbers, these are the '''Ra''', '''Rb''', '''Rc''', '''Rd''' &amp;amp; '''Re''' image (i) parameters (the default values of 0.0 are equivalent to an 'average' generic sensor).&lt;br /&gt;
* The [[vignetting]] model is represented by a polynomial with four parameters: '''Va''' (this is always 1.0 and doesn't need to be optimised) and '''Vb''', '''Vc''' &amp;amp; '''Vd''' (which default to 0.0 - equivalent to no vignetting).  The vignetting centre can also be different from the geometrical centre, this is specified by '''Vx''' &amp;amp; '''Vy''' (both default to 0.0).&lt;br /&gt;
* Exposure (EV) is represented by a single value '''Ev''' (defaults 0.0, equivalent to no-change).&lt;br /&gt;
* The [[white balance]] is represented by multipliers for the red and blue channels '''Er''' and '''Eb''' (the defaults of 1.0 are equivalent to no-change).&lt;br /&gt;
&lt;br /&gt;
A typical 'v' ''variable'' line configuration would look like this, i.e. optimise camera response curve and vignetting for image ''0'' and exposure for images ''1'', ''2'', ''3'' and ''4'':&lt;br /&gt;
&lt;br /&gt;
 v Ra0 Rb0 Rc0 Rd0 Re0 Vb0 Vc0 Vd0&lt;br /&gt;
 v Eev1 Eev2 Eev3 Eev4&lt;br /&gt;
&lt;br /&gt;
(vignetting centre and white balance are left unchanged)&lt;br /&gt;
&lt;br /&gt;
The .pto project itself can then be optimised with '''vig_optimize''' on the command-line like so:&lt;br /&gt;
&lt;br /&gt;
  vig_optimize -o myproject.pto myproject.pto&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;br /&gt;
[[Category:Software:Hugin]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Autooptimiser</id>
		<title>Autooptimiser</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Autooptimiser"/>
				<updated>2010-09-28T22:01:02Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: mention vig_optimize&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''autooptimiser''' is a smart optimiser replacement for [[PTOptimizer]] and [[vig_optimize]], it is part of the [[hugin]] suite of tools for panoramic imaging.&lt;br /&gt;
&lt;br /&gt;
It is not a 100% drop-in replacement for '''PTOptimizer''' as it has a slightly different interface and some extra features:&lt;br /&gt;
&lt;br /&gt;
* '''PTOptimizer''' will write the output of the optimisation into the input script file as 'o' lines, deleting any that already exist.  This behaviour is a little strange, so '''autooptimiser''' writes the result to STDOUT or a new file, as is more usual for a command-line tool.&lt;br /&gt;
* Not clobbering the original file means that there is no need to create 'o' lines, the output file is in the same format as the input with optimised values applied to the 'i' lines.&lt;br /&gt;
* [[PTStitcher]] requires 'o' lines, so the output of '''autooptimiser''' isn't suitable for stitching with '''PTStitcher''' without further processing - Stitch these files with [[nona]] instead.&lt;br /&gt;
&lt;br /&gt;
Additional features:&lt;br /&gt;
&lt;br /&gt;
* '''autooptimiser''' can perform ''pairwise'' optimisation instead of trying to optimise all rotation parameters at the same time, this means that there is no need to pre-position images before optimisation.&lt;br /&gt;
* ''levelling'' the horizon in a set of images can be performed, this is the same functionality as the '''Straighten''' button in the [[hugin Preview window]].&lt;br /&gt;
* ''auto-align'' mode will pick an optimisation scheme suited to the distribution of [[control points]] in the project so there is no need to specify parameters to optimise.&lt;br /&gt;
* '''autooptimiser''' can adjust the panorama [[field of view]], dimensions and [[Projections|projection]] to suit the input images.&lt;br /&gt;
* the '''field of view''' of input images can be specified, this is useful as the project files created by [[autopano]] and [[autopano-sift]] don't specify the '''field of view''' of the input photos.&lt;br /&gt;
* '''autooptimiser''' can also perform photometric optimisation like the [[vig_optimize]] tool. Depending on the input images it selects automaticly these photometric parameters (exposure, white balance, [[vignetting]], [[camera response curve]]) which should be optimised.&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;br /&gt;
[[Category:Software:Hugin]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Hugin_Compiling_Ubuntu</id>
		<title>Hugin Compiling Ubuntu</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Hugin_Compiling_Ubuntu"/>
				<updated>2010-09-25T19:07:58Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: correct apt-get for Hugin&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These instructions are work in progress and updated when newer versions of Ubuntu are released or when Hugin introduces new dependencies. They have worked, at the time of release or soon thereafter, with all versions of Ubuntu/Kubuntu up until 10.10.&lt;br /&gt;
&lt;br /&gt;
They are likely to work only for the latest one, but you can check this page's history at the time that the older Ubuntu version was the most recent one to find the specifics for that version.&lt;br /&gt;
&lt;br /&gt;
Apart from the odd change in package name, nothing should be substantially different (and if does not work, please leave a comment on the [http://groups.google.com/group/hugin-ptx hugin-ptx mailing list]). Don't worry if the same package appears twice in an apt-get install line - apt-get will update existing packages if there is a newer version, and ignore duplicates if the latest version is already installed. On the other hand, if apt-get says that it can't find a package, it might be the odd change in package name. You can find a replacement package by using apt-cache search with a substring of the package required, e.g.&lt;br /&gt;
&amp;lt;pre&amp;gt;apt-cache search wxW&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The goal is to build hugin and the whole set of helper applications required.&lt;br /&gt;
&lt;br /&gt;
== Building environment ==&lt;br /&gt;
Since we are going to build hugin, libpano13 and enblend we need to download and install all the development packages. This is very easy with apt-get.&lt;br /&gt;
In a terminal window (K menu -&amp;gt; System -&amp;gt; Konsole or Applications -&amp;gt; Accessories -&amp;gt; Terminal (in Kubuntu), Applications -&amp;gt; Accessories -&amp;gt; Terminal (in Ubuntu))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install build-essential autoconf automake1.9 libtool flex bison gdb libc6-dev libgcc1 \&lt;br /&gt;
   cmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get the bleeding edge we'll need access to the SVN and Mercurial repositories, and for this we need the correct tools:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install subversion mercurial&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not necessary, but useful if you want to move to the next level and build packages for distribution (list is incomplete):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install subversion-tools&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not necessary, but useful if you want to revisit configuration sets in ccmake&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake-curses-gui&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get on the same page as far as file system layout is concerned, we'll create a folder to contain all source code in your home folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd&lt;br /&gt;
mkdir -p src&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Enblend ==&lt;br /&gt;
&lt;br /&gt;
Get the dependencies. If you are working with large images (300 megapixels and up), you should have a libtiff-devel compiled with large file support and libstdc++6.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install pkg-config libtiff4-dev libboost-graph-dev libboost-thread-dev \&lt;br /&gt;
  libboost-filesystem-dev liblcms1-dev libglew1.5-dev libplot-dev libglut3-dev libopenexr-dev \&lt;br /&gt;
  libxi-dev libxmu-dev help2man texi2html texinfo fig2ps tidy gnuplot libxml-xpath-perl imagemagick&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once all dependencies are in place, get the code. The official repository has migrated from CVS to Mercurial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/enblend&lt;br /&gt;
cd ~/src/enblend&lt;br /&gt;
hg clone http://enblend.hg.sourceforge.net:8000/hgroot/enblend/enblend enblend.hg&lt;br /&gt;
cd enblend.hg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you already have checked out enblend, to update the code to the latest version you need to run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then create a build directory and build in there. And install the Package.&lt;br /&gt;
&lt;br /&gt;
The options below are good for modern multi-core computers.  For a single core, you may be better off setting ENABLE_OPENMP to OFF and ENABLE_IMAGECACHE to ON.  The two options are mutually exclusive.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir enblend.build&lt;br /&gt;
cd enblend.build&lt;br /&gt;
cmake ../enblend.hg -DENABLE_GPU:BOOL=ON -DENABLE_IMAGECACHE:BOOL=OFF -DENABLE_OPENMP:BOOL=ON \&lt;br /&gt;
  -DCPACK_BINARY_DEB:BOOL=ON -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF \&lt;br /&gt;
  -DCPACK_BINARY_STGZ:BOOL=OFF -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF \&lt;br /&gt;
  -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i enblend-4.1.1-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The old autotools way===&lt;br /&gt;
We are then ready to compile. The CXXFLAGS &amp;lt;tt&amp;gt;--param inline-unit-growth=60&amp;lt;/tt&amp;gt; is a workaround for x86_64 systems, Feb 2009, and apparently no longer needed (set by default). If you have an SMP machine and you're building a recent version, &amp;lt;tt&amp;gt;--disable-image-cache&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;--enable-openmp&amp;lt;/tt&amp;gt; will speed up enblend/enfuse massively but may cause segmentation faults; in that case you will be better off with &amp;lt;tt&amp;gt;--enable-image-cache&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;--disable-openmp.&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;-march=native&amp;lt;/tt&amp;gt; is also beneficial and -O2 is better than -O3.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make --makefile=Makefile.scm&lt;br /&gt;
mkdir BUILD&lt;br /&gt;
cd BUILD&lt;br /&gt;
CXXFLAGS=&amp;quot;--param inline-unit-growth=60 -march=native -O2&amp;quot; ../configure --disable-image-cache \&lt;br /&gt;
   --enable-openmp&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The second make step can be very long and memory consuming. Make sure you have enough swap space, and go get a healthy snack while the computer is compiling.&lt;br /&gt;
&lt;br /&gt;
If you encounter problems at any of these stages, please report back to the hugin-ptx mailing list. Report what command in the sequence you were executing, what machine/operating system, the revision checked out from CVS, and all other relevant information.&lt;br /&gt;
&lt;br /&gt;
You are then ready to install with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Libpano13 ==&lt;br /&gt;
&lt;br /&gt;
libpano13 is the new version of the PanoTools libraries. This is a necessary component for hugin, and we need to build it first.&lt;br /&gt;
To build libpano13 we need some libraries and particularly their &amp;lt;code&amp;gt;dev&amp;lt;/code&amp;gt; package:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install zlib1g zlib1g-dev libpng12-dev libjpeg62-dev libtiff4-dev cmake&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On older distributions, zlib1g and zlib1g-dev may not be found. In that case, the same library may be available with the names lib64z1 and lib64z1-dev.&lt;br /&gt;
&lt;br /&gt;
We then need to download the source code from SVN:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/libpano&lt;br /&gt;
cd ~/src/libpano&lt;br /&gt;
svn co https://panotools.svn.sourceforge.net/svnroot/panotools/trunk/libpano libpano13.svn&lt;br /&gt;
cd libpano13.svn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the future there is no need to get the whole source again. Just issue the following commands to bring your source up to date:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/libpano/libpano13.svn&lt;br /&gt;
svn up&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now start the building process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir libpano.build&lt;br /&gt;
cd libpano.build&lt;br /&gt;
cmake ../libpano13.svn -DCMAKE_INSTALL_PREFIX=/usr/local -DCPACK_BINARY_DEB:BOOL=ON \&lt;br /&gt;
   -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i libpano13-*-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The old autotools way ===&lt;br /&gt;
&lt;br /&gt;
The above described building process uses CMake to build libpano which has many advantages. Amongst others it creates a clean package to install / deinstall and decreases the likelihood of wrecking the system. However CMake support is relatively new in libpano. The old autotools way is documented below for completness. You should not need it. However if you do, make sure to run either the CMake build or the autotools build on fresh SVN checkouts to avoid interferences.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./bootstrap&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If any libraries are missing, the script will complain (or at least, let you know that some library hasn't been found). In that case you probably need to install the library. To find in what package is that library, a general rule is to run the command &amp;lt;code&amp;gt;apt-cache search ''missingfile''&amp;lt;/code&amp;gt;, find the relevant library and install both the library and the related &amp;lt;code&amp;gt;-dev&amp;lt;/code&amp;gt; package.&lt;br /&gt;
Run the &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt; script and repeat this process until you have met all the dependencies.&lt;br /&gt;
&lt;br /&gt;
Then we are ready to launch the make process with&lt;br /&gt;
&amp;lt;pre&amp;gt;make&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the library successfully compiles, you have to install it with&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo make install&lt;br /&gt;
sudo ldconfig&amp;lt;/pre&amp;gt;&lt;br /&gt;
The last part is for the OS to be aware of the new library (that has been installed in &amp;lt;code&amp;gt;/usr/local/lib&amp;lt;/code&amp;gt;).&lt;br /&gt;
We can now go back up one folder level and get ready for hugin.&lt;br /&gt;
&amp;lt;pre&amp;gt;cd ..&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Hugin ==&lt;br /&gt;
&lt;br /&gt;
=== Dependencies ===&lt;br /&gt;
&lt;br /&gt;
First we need to activate the &amp;lt;code&amp;gt;universe&amp;lt;/code&amp;gt; repository (in adept package manager, or by editing the /etc/apt/sources.lst file for example) and get the dependencies:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake libopenexr-dev libboost-dev boost-build libboost-thread-dev \&lt;br /&gt;
   libboost-graph-dev gettext libwxgtk2.8-dev libexiv2-dev libimage-exiftool-perl \&lt;br /&gt;
   libglew-dev libglut3-dev liblapack-dev libboost-regex-dev libboost-iostreams-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fetch the Source Code with Mercurial ===&lt;br /&gt;
&lt;br /&gt;
In May 2010 the Hugin project migrated from Subversion (SVN) to Mercurial (hg).  SVN-related instructions are generally outdated.&lt;br /&gt;
&lt;br /&gt;
First we clone the repository.  Unlike SVN, we do not need to choose at this moment which version of Hugin to download/build yet.&lt;br /&gt;
&lt;br /&gt;
If you already have a repository clone, you only need to pull the latest changes and update the code with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin/hugin.hg&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Else, you need to clone the repository and decide which version/branch to build with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/hugin&lt;br /&gt;
cd ~/src/hugin&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/hugin hugin.hg&lt;br /&gt;
cd hugin.hg&lt;br /&gt;
hg branches&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are a contributor with write access, you can use&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
hg clone ssh://${USER}@hugin.hg.sourceforge.net/hgroot/hugin/hugin hugin.hg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The `hg branches` command will list all available branches.  If you decide, e.g., to build the 2010.0 branch, you will update to it with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
hg update -C 2010.0 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Advanced Use - Multiple Source Trees ===&lt;br /&gt;
&lt;br /&gt;
You may want to build multiple versions of Hugin on your machine at the same time, e.g. when you want to build side by side a stable version for your productivity and a development version to give feedback to the developers.  In that case, you will clone the Mercurial repository that is already on your drive and update from it a source tree to a different branch.  Mercurial takes care of details such as optimizing disk usage.  The commands for this are:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
hg clone hugin.hg another_hugin&lt;br /&gt;
cd another_hugin&lt;br /&gt;
hg update -C default&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can have as many &amp;quot;another_hugin&amp;quot; folders as you want.  Just make sure, when pulling the latest updates from SourceForge, to first pull your main repository (the one you cloned from http://hugin.hg.sourceforge.net:8000/hgroot/hugin/hugin.  Then pull all others:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin/hugin.hg&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
cd ../another_hugin&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reference: [http://groups.google.com/group/hugin-ptx/msg/1ce824dd1364e9be]&lt;br /&gt;
&lt;br /&gt;
=== Configure the Build Environment ===&lt;br /&gt;
&lt;br /&gt;
'''Rule:''' You always want to build outside of the source tree to keep the source tree clean.  And to avoid confusion, if you have multiple source trees it is preferable to build for each of them in a separate build folder.&lt;br /&gt;
&lt;br /&gt;
Next we set up the build environment using cmake.&lt;br /&gt;
&lt;br /&gt;
If you compiled and installed libpano to a non standard location set the variables CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH to point to your install location's include and lib directories.&lt;br /&gt;
&lt;br /&gt;
If you are building for distribution, you want to set CMAKE_INSTALL_PREFIX=/usr&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin&lt;br /&gt;
mkdir hugin.hg-build&lt;br /&gt;
cd hugin.hg-build&lt;br /&gt;
cmake ../hugin.hg -DENABLE_LAPACK=YES -DCPACK_BINARY_DEB:BOOL=ON -DCPACK_BINARY_NSIS:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF -DCPACK_BINARY_TBZ2:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Build and Install ===&lt;br /&gt;
&lt;br /&gt;
Finally, we use make to build the code and package it, and dpkg to install it. Look for the version number in the .deb file created and edit the lines below accordingly: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i hugin-*-Linux.deb&lt;br /&gt;
sudo ldconfig&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Important:''' the package does not track dependencies yet, so it likely to fail on machines others than yours.&lt;br /&gt;
&lt;br /&gt;
Reference: [http://theseblog.free.fr/2007/10/building-hugin-in-ubuntu-feisty-fawn.php]&lt;br /&gt;
&lt;br /&gt;
== Automatic Control Point Detectors ==&lt;br /&gt;
&lt;br /&gt;
=== Autopano-sift-C ===&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libxml2-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To build&lt;br /&gt;
&lt;br /&gt;
(Note January 2010 / May 2010: Currently the autopano-sift-C SVN trunk, as well as Hg default tip, is unstable, use the 2.5.1 release tarball instead)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/apsc&lt;br /&gt;
cd ~/src/apsc&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/autopano-sift-C apsc.hg&lt;br /&gt;
cd apsc.hg&lt;br /&gt;
hg branches&lt;br /&gt;
hg update -C 2.5.1&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir apsc.hg.build&lt;br /&gt;
cd apsc.hg.build&lt;br /&gt;
cmake ../apsc.hg -DCMAKE_INSTALL_PREFIX=/usr/local -DCPACK_BINARY_DEB:BOOL=ON \&lt;br /&gt;
   -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i autopano-sift-C-*-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Match-n-shift ===&lt;br /&gt;
&lt;br /&gt;
Match-n-shift is yet an other Autopano-SIFT replacement. It comes in a bundle with pto file manipulation perl libraries and a rich selection of other tools that use nona, enblend, ImageMagick among other things. To use match-n-shift, you need to install at least the [http://search.cpan.org/dist/Panotools-Script/ Panotools::Script] library and some other perl modules. It requires:&lt;br /&gt;
&lt;br /&gt;
*  Image::Size 2.9&lt;br /&gt;
*  Storable 2.0&lt;br /&gt;
*  Image::ExifTool 6&lt;br /&gt;
&lt;br /&gt;
Chances are that you do not need to update Storable which is a standard perl module. To check the version of installed versions of these modules, write these lines to the command prompt:&lt;br /&gt;
&lt;br /&gt;
  perl -MStorable -le 'print Storable-&amp;gt;VERSION;'&lt;br /&gt;
  perl -MImage::Size -le 'print Image::Size-&amp;gt;VERSION;'&lt;br /&gt;
  perl -MImage::ExifTool -le 'print Image::ExifTool-&amp;gt;VERSION;'&lt;br /&gt;
&lt;br /&gt;
There are various ways to install or upgrade these modules. Ubuntu has binary packages for many perl modules, you can skip the CPAN installation below and type:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install libimage-size-perl libimage-exiftool-perl&lt;br /&gt;
&lt;br /&gt;
Alternatively, perl is an interpreted language and these modules are pure perl, so installing from source is an easy thing.&lt;br /&gt;
&lt;br /&gt;
The best place to install perl modules is directly from a CPAN archive. CPAN is short for Comprehensive Perl Archive Network. The program to interact with CPAN comes with all perl installations. Start it by running:&lt;br /&gt;
&lt;br /&gt;
  sudo cpan&lt;br /&gt;
&lt;br /&gt;
If this is your first time running the program you will be asked a number of questions (you can safely accept the suggested values). Last question lets you select a number of CPAN mirrors nearest to you.&lt;br /&gt;
&lt;br /&gt;
When all is done, you can enter the install commands after the 'cpan&amp;gt;' prompt:&lt;br /&gt;
&lt;br /&gt;
  install Image::Size Storable Image::ExifTool&lt;br /&gt;
&lt;br /&gt;
Answer 'y' to any question of dependencies and wait for install to complete. 'exit' leaves the cpan shell.&lt;br /&gt;
&lt;br /&gt;
Next, you need to retrieve and install the Panotools-Script collection&lt;br /&gt;
of perl libraries (Panotools::Script) and programs that use them -&lt;br /&gt;
including match-n-shift:&lt;br /&gt;
&lt;br /&gt;
  svn co https://panotools.svn.sourceforge.net/svnroot/panotools/trunk/Panotools-Script  Panotools-Script&lt;br /&gt;
  cd Panotools-Script&lt;br /&gt;
  perl Makefile.PL&lt;br /&gt;
  make&lt;br /&gt;
  make test&lt;br /&gt;
  sudo make install&lt;br /&gt;
&lt;br /&gt;
Just to confuse you, you can also ignore everything above and just install Panotools::Script and all its dependencies from CPAN. From command line, type:&lt;br /&gt;
&lt;br /&gt;
  sudo cpan Panotools::Script&lt;br /&gt;
&lt;br /&gt;
You can run match-n-shift from command line using the same parameters as autopano-c-complete.sh or you can modify hugin to run it for you:&lt;br /&gt;
&lt;br /&gt;
* start Hugin&lt;br /&gt;
* navigate the menu File to Preferences&lt;br /&gt;
* In the Preferences window, open the Autopano tab&lt;br /&gt;
* Select Autopano -&amp;gt; Autopano-SIFT&lt;br /&gt;
* tick the checkbox for Use alternative Autopano-SIFT program&lt;br /&gt;
* enter the full path to match-n-shift (/usr/local/bin/match-n-shift) in the Autopano-SIFT field&lt;br /&gt;
* enter the following string in the Arguments field:&lt;br /&gt;
 -f %f -v %v -c -p %p -o %o %i&lt;br /&gt;
&lt;br /&gt;
=== MatchPoint ===&lt;br /&gt;
&lt;br /&gt;
MatchPoint is a next generation CP generator. The result of a GSoC2007 project, it is still very experimental. Experience reports needed. Read more [http://groups.google.com/group/hugin-ptx/browse_thread/thread/cba2b2ce94dd9054 here]&lt;br /&gt;
&lt;br /&gt;
Matchpoint is now located inside the main hugin source tree, no need to checkout separately. It is compiled together with hugin, but not installed by default.&lt;br /&gt;
&lt;br /&gt;
* copy the MatchPoint executable into /usr/local/bin manually&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin/hugin.hg-build&lt;br /&gt;
sudo cp src/matchpoint/matchpoint /usr/local/bin/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* edit /usr/local/bin/autopano-c-complete.sh (do it with sudo to have the necessary permission)&lt;br /&gt;
** line 79: replace the .key.gz extension with .key (not sure if matchpoint supports compression)&lt;br /&gt;
** lines 83 and 88: replace '''generatekeys &amp;quot;$arg&amp;quot; $FILENAME $SIZE''' with '''matchpoint &amp;quot;$arg&amp;quot; $FILENAME''' (not sure if the size option or any other options of the original generatekeys are applicable)&lt;br /&gt;
&lt;br /&gt;
=== Pan-o-matic ===&lt;br /&gt;
&lt;br /&gt;
Yet another control point generator [http://aorlinsk2.free.fr/panomatic/?p=home Home Page]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install libboost-dev&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download [http://aorlinsk2.free.fr/panomatic/download.php?d=7&amp;amp;v=0.9.4 Panomatic 0.9.4 bz2] and if you're on Ubuntu 9.10 or newer also the [http://aorlinsk2.free.fr/panomatic/panomatic_gcc44.patch patch] for the gcc4.4 compiler.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/panomatic&lt;br /&gt;
cd ~/src/panomatic&lt;br /&gt;
wget &amp;quot;http://aorlinsk2.free.fr/panomatic/download.php?d=7&amp;amp;v=0.9.4&amp;quot; -O panomatic-0.9.4-src.tar.bz2&lt;br /&gt;
wget http://aorlinsk2.free.fr/panomatic/panomatic_gcc44.patch patch&lt;br /&gt;
tar xvfj panomatic-0.9.4-src.tar.bz2&lt;br /&gt;
cd panomatic-0.9.4&lt;br /&gt;
patch -p 1 &amp;lt; ../panomatic_gcc44.patch&lt;br /&gt;
./configure&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To use Pano-o-matic, open Hugin&lt;br /&gt;
&lt;br /&gt;
* In File &amp;gt; Preferences &amp;gt; Autopano :&lt;br /&gt;
* Select Autopano-SIFT&lt;br /&gt;
* Check &amp;quot;Use alternative autopaon-SIFT program&amp;quot;&lt;br /&gt;
* Choose the path to the binary ( /usr/local/bin )&lt;br /&gt;
* In Arguments, put : -o %o %i&lt;br /&gt;
&lt;br /&gt;
==== Pablo's variation ====&lt;br /&gt;
&lt;br /&gt;
Around the end of the year 2009, Pablo integrated a [http://groups.google.com/group/hugin-ptx/browse_thread/thread/d9c0558c679cad52 new] experimental descriptor based on the geometric blur and DAISY papers. Also, Pablo said that the algorithm is not really based on a published approach, just on some ideas that are mentioned in a few of them, and its currently simpler than any of them:&lt;br /&gt;
&lt;br /&gt;
o geometric blur: [http://www.eecs.berkeley.edu/~aberg/gb.html]&lt;br /&gt;
&lt;br /&gt;
o daisy: [http://cvlab.epfl.ch/~tola/daisy.html]&lt;br /&gt;
&lt;br /&gt;
o descriptor learning: [http://cvlab.epfl.ch/~brown/learndesc/learndesc.html]&lt;br /&gt;
&lt;br /&gt;
To build that version of panomatic instead, follow these instructions:&lt;br /&gt;
&lt;br /&gt;
This is current the subject of a GSoC 2010 project and may be available in future versions of Hugin.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-python-dev bzr cmake libvigraimpex-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
bzr branch lp:~pablo.dangelo/hugin/panomatic-lib&lt;br /&gt;
mkdir build&lt;br /&gt;
cd build&lt;br /&gt;
cmake ../panomatic-lib&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To use the new descriptor the arguments for Hugin are: '''--sieve1size 100 --sieve2size 2 -o %o %i'''&lt;br /&gt;
&lt;br /&gt;
== Image-ExifTool ==&lt;br /&gt;
&lt;br /&gt;
ExifTool is a platform-independent Perl library plus a command-line application for reading, writing and editing meta information in image, audio and video files. [http://www.sno.phy.queensu.ca/~phil/exiftool/=home Home Page]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get purge libimage-exiftool-perl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget http://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-8.30.tar.gz&lt;br /&gt;
tar -xzf Image-ExifTool-8.30.tar.gz&lt;br /&gt;
cd Image-ExifTool-8.30&lt;br /&gt;
perl Makefile.PL&lt;br /&gt;
make test&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Pano Viewers ==&lt;br /&gt;
&lt;br /&gt;
=== PanoGLView ===&lt;br /&gt;
&lt;br /&gt;
PanoGLView is an OpenGL hardware accelerated interactive immersive viewer for equirectangular images.&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install wx-common&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To build and install:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/panoglview&lt;br /&gt;
cd ~/src/panoglview&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/panoglview pglv.hg&lt;br /&gt;
cd pglv.hg&lt;br /&gt;
hg update&lt;br /&gt;
./bootstrap&lt;br /&gt;
./configure&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== FreePV - DEPENDENCIES ARE BROKEN - FAILS TO BUILD ===&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake make pkg-config g++ mozilla-devscripts freeglut3-dev zlib1g-dev \&lt;br /&gt;
   libjpeg-dev libxext-dev libxmu-dev x11proto-xf86vidmode-dev libxxf86vm-dev libnspr4-dev \&lt;br /&gt;
   libxml2-dev libpng12-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To build&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
svn co https://freepv.svn.sourceforge.net/svnroot/freepv/freepv/trunk/ freepv&lt;br /&gt;
cd freepv&lt;br /&gt;
cmake .&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Notes for Packagers ==&lt;br /&gt;
* The deb packages built by CMake (2.8.2) are broken by Debian standard.  Better not distributing them.  There are official updated recent packages at&lt;br /&gt;
*:http://packages.debian.org/hugin&lt;br /&gt;
*:http://packages.debian.org/hugin-tools&lt;br /&gt;
*:http://packages.debian.org/hugin-data&lt;br /&gt;
* to get an updated ChangeLog from Mercurial repositories (Hugin has it also in the cmake invocation, use '''-DUPDATE_CHANGELOG=1''')&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
hg log --follow --style=changelog &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* in Hugin&lt;br /&gt;
* to update the ChangeLog in SVN repositories (Panotools)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
svn up&lt;br /&gt;
svn2cl&lt;br /&gt;
svn ci&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Hugin]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Hugin_Compiling_Ubuntu</id>
		<title>Hugin Compiling Ubuntu</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Hugin_Compiling_Ubuntu"/>
				<updated>2010-09-16T22:36:29Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: add a cd to ensure correct dir before cp&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These instructions are work in progress and updated when newer versions of Ubuntu are released or when Hugin introduces new dependencies. They have worked, at the time of release or soon thereafter, with all versions of Ubuntu/Kubuntu up until 10.04.&lt;br /&gt;
&lt;br /&gt;
They are likely to work only for the latest one, but you can check this page's history at the time that the older Ubuntu version was the most recent one to find the specifics for that version.&lt;br /&gt;
&lt;br /&gt;
Apart from the odd change in package name, nothing should be substantially different (and if does not work, please leave a comment on the [http://groups.google.com/group/hugin-ptx hugin-ptx mailing list]). Don't worry if the same package appears twice in an apt-get install line - apt-get will update existing packages if there is a newer version, and ignore duplicates if the latest version is already installed. On the other hand, if apt-get says that it can't find a package, it might be the odd change in package name. You can find a replacement package by using apt-cache search with a substring of the package required, e.g.&lt;br /&gt;
&amp;lt;pre&amp;gt;apt-cache search wxW&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The goal is to build hugin and the whole set of helper applications required.&lt;br /&gt;
&lt;br /&gt;
== Building environment ==&lt;br /&gt;
Since we are going to build hugin, libpano13 and enblend we need to download and install all the development packages. This is very easy with apt-get.&lt;br /&gt;
In a terminal window (K menu -&amp;gt; System -&amp;gt; Konsole or Applications -&amp;gt; Accessories -&amp;gt; Terminal (in Kubuntu), Applications -&amp;gt; Accessories -&amp;gt; Terminal (in Ubuntu))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install build-essential autoconf automake1.9 libtool flex bison gdb libc6-dev libgcc1 \&lt;br /&gt;
   cmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get the bleeding edge we'll need access to the SVN and Mercurial repositories, and for this we need the correct tools:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install subversion mercurial&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not necessary, but useful if you want to move to the next level and build packages for distribution (list is incomplete):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install subversion-tools&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not necessary, but useful if you want to revisit configuration sets in ccmake&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake-curses-gui&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get on the same page as far as file system layout is concerned, we'll create a folder to contain all source code in your home folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd&lt;br /&gt;
mkdir -p src&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Enblend ==&lt;br /&gt;
&lt;br /&gt;
Get the dependencies. If you are working with large images (300 megapixels and up), you should have a libtiff-devel compiled with large file support and libstdc++6.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install pkg-config libtiff4-dev libboost-graph-dev libboost-thread-dev \&lt;br /&gt;
  libboost-filesystem-dev liblcms1-dev libglew1.5-dev libplot-dev libglut3-dev libopenexr-dev \&lt;br /&gt;
  libxi-dev libxmu-dev help2man texi2html texinfo fig2ps tidy gnuplot libxml-xpath-perl imagemagick&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once all dependencies are in place, get the code. The official repository has migrated from CVS to Mercurial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/enblend&lt;br /&gt;
cd ~/src/enblend&lt;br /&gt;
hg clone http://enblend.hg.sourceforge.net:8000/hgroot/enblend/enblend enblend.hg&lt;br /&gt;
cd enblend.hg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you already have checked out enblend, to update the code to the latest version you need to run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then create a build directory and build in there. And install the Package.&lt;br /&gt;
&lt;br /&gt;
The options below are good for modern multi-core computers.  For a single core, you may be better off setting ENABLE_OPENMP to OFF and ENABLE_IMAGECACHE to ON.  The two options are mutually exclusive.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir enblend.build&lt;br /&gt;
cd enblend.build&lt;br /&gt;
cmake ../enblend.hg -DENABLE_GPU:BOOL=ON -DENABLE_IMAGECACHE:BOOL=OFF -DENABLE_OPENMP:BOOL=ON \&lt;br /&gt;
  -DCPACK_BINARY_DEB:BOOL=ON -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF \&lt;br /&gt;
  -DCPACK_BINARY_STGZ:BOOL=OFF -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF \&lt;br /&gt;
  -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i enblend-4.1.1-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The old autotools way===&lt;br /&gt;
We are then ready to compile. The CXXFLAGS &amp;lt;tt&amp;gt;--param inline-unit-growth=60&amp;lt;/tt&amp;gt; is a workaround for x86_64 systems, Feb 2009, and apparently no longer needed (set by default). If you have an SMP machine and you're building a recent version, &amp;lt;tt&amp;gt;--disable-image-cache&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;--enable-openmp&amp;lt;/tt&amp;gt; will speed up enblend/enfuse massively but may cause segmentation faults; in that case you will be better off with &amp;lt;tt&amp;gt;--enable-image-cache&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;--disable-openmp.&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;-march=native&amp;lt;/tt&amp;gt; is also beneficial and -O2 is better than -O3.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make --makefile=Makefile.scm&lt;br /&gt;
mkdir BUILD&lt;br /&gt;
cd BUILD&lt;br /&gt;
CXXFLAGS=&amp;quot;--param inline-unit-growth=60 -march=native -O2&amp;quot; ../configure --disable-image-cache \&lt;br /&gt;
   --enable-openmp&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The second make step can be very long and memory consuming. Make sure you have enough swap space, and go get a healthy snack while the computer is compiling.&lt;br /&gt;
&lt;br /&gt;
If you encounter problems at any of these stages, please report back to the hugin-ptx mailing list. Report what command in the sequence you were executing, what machine/operating system, the revision checked out from CVS, and all other relevant information.&lt;br /&gt;
&lt;br /&gt;
You are then ready to install with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Libpano13 ==&lt;br /&gt;
&lt;br /&gt;
libpano13 is the new version of the PanoTools libraries. This is a necessary component for hugin, and we need to build it first.&lt;br /&gt;
To build libpano13 we need some libraries and particularly their &amp;lt;code&amp;gt;dev&amp;lt;/code&amp;gt; package:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install zlib1g zlib1g-dev libpng12-dev libjpeg62-dev libtiff4-dev cmake&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On older distributions, zlib1g and zlib1g-dev may not be found. In that case, the same library may be available with the names lib64z1 and lib64z1-dev.&lt;br /&gt;
&lt;br /&gt;
We then need to download the source code from SVN:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/libpano&lt;br /&gt;
cd ~/src/libpano&lt;br /&gt;
svn co https://panotools.svn.sourceforge.net/svnroot/panotools/trunk/libpano libpano13.svn&lt;br /&gt;
cd libpano13.svn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the future there is no need to get the whole source again. Just issue the following commands to bring your source up to date:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/libpano/libpano13.svn&lt;br /&gt;
svn up&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now start the building process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir libpano.build&lt;br /&gt;
cd libpano.build&lt;br /&gt;
cmake ../libpano13.svn -DCMAKE_INSTALL_PREFIX=/usr/local -DCPACK_BINARY_DEB:BOOL=ON \&lt;br /&gt;
   -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i libpano13-*-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The old autotools way ===&lt;br /&gt;
&lt;br /&gt;
The above described building process uses CMake to build libpano which has many advantages. Amongst others it creates a clean package to install / deinstall and decreases the likelihood of wrecking the system. However CMake support is relatively new in libpano. The old autotools way is documented below for completness. You should not need it. However if you do, make sure to run either the CMake build or the autotools build on fresh SVN checkouts to avoid interferences.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./bootstrap&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If any libraries are missing, the script will complain (or at least, let you know that some library hasn't been found). In that case you probably need to install the library. To find in what package is that library, a general rule is to run the command &amp;lt;code&amp;gt;apt-cache search ''missingfile''&amp;lt;/code&amp;gt;, find the relevant library and install both the library and the related &amp;lt;code&amp;gt;-dev&amp;lt;/code&amp;gt; package.&lt;br /&gt;
Run the &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt; script and repeat this process until you have met all the dependencies.&lt;br /&gt;
&lt;br /&gt;
Then we are ready to launch the make process with&lt;br /&gt;
&amp;lt;pre&amp;gt;make&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the library successfully compiles, you have to install it with&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo make install&lt;br /&gt;
sudo ldconfig&amp;lt;/pre&amp;gt;&lt;br /&gt;
The last part is for the OS to be aware of the new library (that has been installed in &amp;lt;code&amp;gt;/usr/local/lib&amp;lt;/code&amp;gt;).&lt;br /&gt;
We can now go back up one folder level and get ready for hugin.&lt;br /&gt;
&amp;lt;pre&amp;gt;cd ..&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Hugin ==&lt;br /&gt;
&lt;br /&gt;
=== Dependencies ===&lt;br /&gt;
&lt;br /&gt;
First we need to activate the &amp;lt;code&amp;gt;universe&amp;lt;/code&amp;gt; repository (in adept package manager, or by editing the /etc/apt/sources.lst file for example) and get the dependencies:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake libopenexr-dev libboost-dev boost-build libboost-thread-dev \&lt;br /&gt;
   libboost-graph-dev gettext libwxgtk2.8-dev libexiv2-dev libimage-exiftool-perl \&lt;br /&gt;
   libglew-dev libglut3-dev liblapack-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fetch the Source Code with Mercurial ===&lt;br /&gt;
&lt;br /&gt;
In May 2010 the Hugin project migrated from Subversion (SVN) to Mercurial (hg).  SVN-related instructions are generally outdated.&lt;br /&gt;
&lt;br /&gt;
First we clone the repository.  Unlike SVN, we do not need to choose at this moment which version of Hugin to download/build yet.&lt;br /&gt;
&lt;br /&gt;
If you already have a repository clone, you only need to pull the latest changes and update the code with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin/hugin.hg&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Else, you need to clone the repository and decide which version/branch to build with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/hugin&lt;br /&gt;
cd ~/src/hugin&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/hugin hugin.hg&lt;br /&gt;
cd hugin.hg&lt;br /&gt;
hg branches&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The `hg branches` command will list all available branches.  If you decide, e.g., to build the 2010.0 branch, you will update to it with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
hg update -C 2010.0 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Advanced Use - Multiple Source Trees ===&lt;br /&gt;
&lt;br /&gt;
You may want to build multiple versions of Hugin on your machine at the same time, e.g. when you want to build side by side a stable version for your productivity and a development version to give feedback to the developers.  In that case, you will clone the Mercurial repository that is already on your drive and update from it a source tree to a different branch.  Mercurial takes care of details such as optimizing disk usage.  The commands for this are:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
hg clone hugin.hg another_hugin&lt;br /&gt;
cd another_hugin&lt;br /&gt;
hg update -C default&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can have as many &amp;quot;another_hugin&amp;quot; folders as you want.  Just make sure, when pulling the latest updates from SourceForge, to first pull your main repository (the one you cloned from http://hugin.hg.sourceforge.net:8000/hgroot/hugin/hugin.  Then pull all others:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin/hugin.hg&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
cd ../another_hugin&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reference: [http://groups.google.com/group/hugin-ptx/msg/1ce824dd1364e9be]&lt;br /&gt;
&lt;br /&gt;
=== Configure the Build Environment ===&lt;br /&gt;
&lt;br /&gt;
'''Rule:''' You always want to build outside of the source tree to keep the source tree clean.  And to avoid confusion, if you have multiple source trees it is preferable to build for each of them in a separate build folder.&lt;br /&gt;
&lt;br /&gt;
Next we set up the build environment using cmake.&lt;br /&gt;
&lt;br /&gt;
If you compiled and installed libpano to a non standard location set the variables CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH to point to your install location's include and lib directories.&lt;br /&gt;
&lt;br /&gt;
If you are building for distribution, you want to set CMAKE_INSTALL_PREFIX=/usr&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin&lt;br /&gt;
mkdir hugin.hg-build&lt;br /&gt;
cd hugin.hg-build&lt;br /&gt;
cmake ../hugin.hg -DENABLE_LAPACK=YES -DCPACK_BINARY_DEB:BOOL=ON -DCPACK_BINARY_NSIS:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF -DCPACK_BINARY_TBZ2:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Build and Install ===&lt;br /&gt;
&lt;br /&gt;
Finally, we use make to build the code and package it, and dpkg to install it. Look for the version number in the .deb file created and edit the lines below accordingly: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i hugin-*-Linux.deb&lt;br /&gt;
sudo ldconfig&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Important:''' the package does not track dependencies yet, so it likely to fail on machines others than yours.&lt;br /&gt;
&lt;br /&gt;
Reference: [http://theseblog.free.fr/2007/10/building-hugin-in-ubuntu-feisty-fawn.php]&lt;br /&gt;
&lt;br /&gt;
== Automatic Control Point Detectors ==&lt;br /&gt;
&lt;br /&gt;
=== Autopano-sift-C ===&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libxml2-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To build&lt;br /&gt;
&lt;br /&gt;
(Note January 2010 / May 2010: Currently the autopano-sift-C SVN trunk, as well as Hg default tip, is unstable, use the 2.5.1 release tarball instead)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/apsc&lt;br /&gt;
cd ~/src/apsc&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/autopano-sift-C apsc.hg&lt;br /&gt;
cd apsc.hg&lt;br /&gt;
hg branches&lt;br /&gt;
hg update -C 2.5.1&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir apsc.hg.build&lt;br /&gt;
cd apsc.hg.build&lt;br /&gt;
cmake ../apsc.hg -DCMAKE_INSTALL_PREFIX=/usr/local -DCPACK_BINARY_DEB:BOOL=ON \&lt;br /&gt;
   -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i autopano-sift-C-*-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Match-n-shift ===&lt;br /&gt;
&lt;br /&gt;
Match-n-shift is yet an other Autopano-SIFT replacement. It comes in a bundle with pto file manipulation perl libraries and a rich selection of other tools that use nona, enblend, ImageMagick among other things. To use match-n-shift, you need to install at least the [http://search.cpan.org/dist/Panotools-Script/ Panotools::Script] library and some other perl modules. It requires:&lt;br /&gt;
&lt;br /&gt;
*  Image::Size 2.9&lt;br /&gt;
*  Storable 2.0&lt;br /&gt;
*  Image::ExifTool 6&lt;br /&gt;
&lt;br /&gt;
Chances are that you do not need to update Storable which is a standard perl module. To check the version of installed versions of these modules, write these lines to the command prompt:&lt;br /&gt;
&lt;br /&gt;
  perl -MStorable -le 'print Storable-&amp;gt;VERSION;'&lt;br /&gt;
  perl -MImage::Size -le 'print Image::Size-&amp;gt;VERSION;'&lt;br /&gt;
  perl -MImage::ExifTool -le 'print Image::ExifTool-&amp;gt;VERSION;'&lt;br /&gt;
&lt;br /&gt;
There are various ways to install or upgrade these modules. Ubuntu has binary packages for many perl modules, you can skip the CPAN installation below and type:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install libimage-size-perl libimage-exiftool-perl&lt;br /&gt;
&lt;br /&gt;
Alternatively, perl is an interpreted language and these modules are pure perl, so installing from source is an easy thing.&lt;br /&gt;
&lt;br /&gt;
The best place to install perl modules is directly from a CPAN archive. CPAN is short for Comprehensive Perl Archive Network. The program to interact with CPAN comes with all perl installations. Start it by running:&lt;br /&gt;
&lt;br /&gt;
  sudo cpan&lt;br /&gt;
&lt;br /&gt;
If this is your first time running the program you will be asked a number of questions (you can safely accept the suggested values). Last question lets you select a number of CPAN mirrors nearest to you.&lt;br /&gt;
&lt;br /&gt;
When all is done, you can enter the install commands after the 'cpan&amp;gt;' prompt:&lt;br /&gt;
&lt;br /&gt;
  install Image::Size Storable Image::ExifTool&lt;br /&gt;
&lt;br /&gt;
Answer 'y' to any question of dependencies and wait for install to complete. 'exit' leaves the cpan shell.&lt;br /&gt;
&lt;br /&gt;
Next, you need to retrieve and install the Panotools-Script collection&lt;br /&gt;
of perl libraries (Panotools::Script) and programs that use them -&lt;br /&gt;
including match-n-shift:&lt;br /&gt;
&lt;br /&gt;
  svn co https://panotools.svn.sourceforge.net/svnroot/panotools/trunk/Panotools-Script  Panotools-Script&lt;br /&gt;
  cd Panotools-Script&lt;br /&gt;
  perl Makefile.PL&lt;br /&gt;
  make&lt;br /&gt;
  make test&lt;br /&gt;
  sudo make install&lt;br /&gt;
&lt;br /&gt;
Just to confuse you, you can also ignore everything above and just install Panotools::Script and all its dependencies from CPAN. From command line, type:&lt;br /&gt;
&lt;br /&gt;
  sudo cpan Panotools::Script&lt;br /&gt;
&lt;br /&gt;
You can run match-n-shift from command line using the same parameters as autopano-c-complete.sh or you can modify hugin to run it for you:&lt;br /&gt;
&lt;br /&gt;
* start Hugin&lt;br /&gt;
* navigate the menu File to Preferences&lt;br /&gt;
* In the Preferences window, open the Autopano tab&lt;br /&gt;
* Select Autopano -&amp;gt; Autopano-SIFT&lt;br /&gt;
* tick the checkbox for Use alternative Autopano-SIFT program&lt;br /&gt;
* enter the full path to match-n-shift (/usr/local/bin/match-n-shift) in the Autopano-SIFT field&lt;br /&gt;
* enter the following string in the Arguments field:&lt;br /&gt;
 -f %f -v %v -c -p %p -o %o %i&lt;br /&gt;
&lt;br /&gt;
=== MatchPoint ===&lt;br /&gt;
&lt;br /&gt;
MatchPoint is a next generation CP generator. The result of a GSoC2007 project, it is still very experimental. Experience reports needed. Read more [http://groups.google.com/group/hugin-ptx/browse_thread/thread/cba2b2ce94dd9054 here]&lt;br /&gt;
&lt;br /&gt;
Matchpoint is now located inside the main hugin source tree, no need to checkout separately. It is compiled together with hugin, but not installed by default.&lt;br /&gt;
&lt;br /&gt;
* copy the MatchPoint executable into /usr/local/bin manually&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin/hugin.hg-build&lt;br /&gt;
sudo cp src/matchpoint/matchpoint /usr/local/bin/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* edit /usr/local/bin/autopano-c-complete.sh (do it with sudo to have the necessary permission)&lt;br /&gt;
** line 79: replace the .key.gz extension with .key (not sure if matchpoint supports compression)&lt;br /&gt;
** lines 83 and 88: replace '''generatekeys &amp;quot;$arg&amp;quot; $FILENAME $SIZE''' with '''matchpoint &amp;quot;$arg&amp;quot; $FILENAME''' (not sure if the size option or any other options of the original generatekeys are applicable)&lt;br /&gt;
&lt;br /&gt;
=== Pan-o-matic ===&lt;br /&gt;
&lt;br /&gt;
Yet another control point generator [http://aorlinsk2.free.fr/panomatic/?p=home Home Page]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install libboost-dev&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download [http://aorlinsk2.free.fr/panomatic/download.php?d=7&amp;amp;v=0.9.4 Panomatic 0.9.4 bz2] and if you're on Ubuntu 9.10 or newer also the [http://aorlinsk2.free.fr/panomatic/panomatic_gcc44.patch patch] for the gcc4.4 compiler.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/panomatic&lt;br /&gt;
cd ~/src/panomatic&lt;br /&gt;
wget &amp;quot;http://aorlinsk2.free.fr/panomatic/download.php?d=7&amp;amp;v=0.9.4&amp;quot; -O panomatic-0.9.4-src.tar.bz2&lt;br /&gt;
wget http://aorlinsk2.free.fr/panomatic/panomatic_gcc44.patch patch&lt;br /&gt;
tar xvfj panomatic-0.9.4-src.tar.bz2&lt;br /&gt;
cd panomatic-0.9.4&lt;br /&gt;
patch -p 1 &amp;lt; ../panomatic_gcc44.patch&lt;br /&gt;
./configure&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To use Pano-o-matic, open Hugin&lt;br /&gt;
&lt;br /&gt;
* In File &amp;gt; Preferences &amp;gt; Autopano :&lt;br /&gt;
* Select Autopano-SIFT&lt;br /&gt;
* Check &amp;quot;Use alternative autopaon-SIFT program&amp;quot;&lt;br /&gt;
* Choose the path to the binary ( /usr/local/bin )&lt;br /&gt;
* In Arguments, put : -o %o %i&lt;br /&gt;
&lt;br /&gt;
==== Pablo's variation ====&lt;br /&gt;
&lt;br /&gt;
Around the end of the year 2009, Pablo integrated a [http://groups.google.com/group/hugin-ptx/browse_thread/thread/d9c0558c679cad52 new] experimental descriptor based on the geometric blur and DAISY papers. Also, Pablo said that the algorithm is not really based on a published approach, just on some ideas that are mentioned in a few of them, and its currently simpler than any of them:&lt;br /&gt;
&lt;br /&gt;
o geometric blur: [http://www.eecs.berkeley.edu/~aberg/gb.html]&lt;br /&gt;
&lt;br /&gt;
o daisy: [http://cvlab.epfl.ch/~tola/daisy.html]&lt;br /&gt;
&lt;br /&gt;
o descriptor learning: [http://cvlab.epfl.ch/~brown/learndesc/learndesc.html]&lt;br /&gt;
&lt;br /&gt;
To build that version of panomatic instead, follow these instructions:&lt;br /&gt;
&lt;br /&gt;
This is current the subject of a GSoC 2010 project and may be available in future versions of Hugin.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-python-dev bzr cmake libvigraimpex-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
bzr branch lp:~pablo.dangelo/hugin/panomatic-lib&lt;br /&gt;
mkdir build&lt;br /&gt;
cd build&lt;br /&gt;
cmake ../panomatic-lib&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To use the new descriptor the arguments for Hugin are: '''--sieve1size 100 --sieve2size 2 -o %o %i'''&lt;br /&gt;
&lt;br /&gt;
== Image-ExifTool ==&lt;br /&gt;
&lt;br /&gt;
ExifTool is a platform-independent Perl library plus a command-line application for reading, writing and editing meta information in image, audio and video files. [http://www.sno.phy.queensu.ca/~phil/exiftool/=home Home Page]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get purge libimage-exiftool-perl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget http://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-8.30.tar.gz&lt;br /&gt;
tar -xzf Image-ExifTool-8.30.tar.gz&lt;br /&gt;
cd Image-ExifTool-8.30&lt;br /&gt;
perl Makefile.PL&lt;br /&gt;
make test&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Pano Viewers ==&lt;br /&gt;
&lt;br /&gt;
=== PanoGLView ===&lt;br /&gt;
&lt;br /&gt;
PanoGLView is an OpenGL hardware accelerated interactive immersive viewer for equirectangular images.&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install wx-common&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To build and install:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/panoglview&lt;br /&gt;
cd ~/src/panoglview&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/panoglview pglv.hg&lt;br /&gt;
cd pglv.hg&lt;br /&gt;
hg update&lt;br /&gt;
./bootstrap&lt;br /&gt;
./configure&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== FreePV - DEPENDENCIES ARE BROKEN - FAILS TO BUILD ===&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake make pkg-config g++ mozilla-devscripts freeglut3-dev zlib1g-dev \&lt;br /&gt;
   libjpeg-dev libxext-dev libxmu-dev x11proto-xf86vidmode-dev libxxf86vm-dev libnspr4-dev \&lt;br /&gt;
   libxml2-dev libpng12-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To build&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
svn co https://freepv.svn.sourceforge.net/svnroot/freepv/freepv/trunk/ freepv&lt;br /&gt;
cd freepv&lt;br /&gt;
cmake .&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Notes for Packagers ==&lt;br /&gt;
* '''Outdated - need something equivalent with Hg''': before releasing a tarball, upgrade the Changelog with svn2cl&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ svn up&lt;br /&gt;
$ svn2cl&lt;br /&gt;
$ svn ci&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Hugin]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Hugin_Compiling_Ubuntu</id>
		<title>Hugin Compiling Ubuntu</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Hugin_Compiling_Ubuntu"/>
				<updated>2010-09-15T20:08:13Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: add paragraph break&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These instructions are work in progress and updated when newer versions of Ubuntu are released or when Hugin introduces new dependencies. They have worked, at the time of release or soon thereafter, with all versions of Ubuntu/Kubuntu up until 10.04.&lt;br /&gt;
&lt;br /&gt;
They are likely to work only for the latest one, but you can check this page's history at the time that the older Ubuntu version was the most recent one to find the specifics for that version.&lt;br /&gt;
&lt;br /&gt;
Apart from the odd change in package name, nothing should be substantially different (and if does not work, please leave a comment on the [http://groups.google.com/group/hugin-ptx hugin-ptx mailing list]). Don't worry if the same package appears twice in an apt-get install line - apt-get will update existing packages if there is a newer version, and ignore duplicates if the latest version is already installed. On the other hand, if apt-get says that it can't find a package, it might be the odd change in package name. You can find a replacement package by using apt-cache search with a substring of the package required, e.g.&lt;br /&gt;
&amp;lt;pre&amp;gt;apt-cache search wxW&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The goal is to build hugin and the whole set of helper applications required.&lt;br /&gt;
&lt;br /&gt;
== Building environment ==&lt;br /&gt;
Since we are going to build hugin, libpano13 and enblend we need to download and install all the development packages. This is very easy with apt-get.&lt;br /&gt;
In a terminal window (K menu -&amp;gt; System -&amp;gt; Konsole or Applications -&amp;gt; Accessories -&amp;gt; Terminal (in Kubuntu), Applications -&amp;gt; Accessories -&amp;gt; Terminal (in Ubuntu))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install build-essential autoconf automake1.9 libtool flex bison gdb libc6-dev libgcc1 \&lt;br /&gt;
   cmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get the bleeding edge we'll need access to the SVN and Mercurial repositories, and for this we need the correct tools:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install subversion mercurial&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not necessary, but useful if you want to move to the next level and build packages for distribution (list is incomplete):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install subversion-tools&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not necessary, but useful if you want to revisit configuration sets in ccmake&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake-curses-gui&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get on the same page as far as file system layout is concerned, we'll create a folder to contain all source code in your home folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd&lt;br /&gt;
mkdir -p src&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Enblend ==&lt;br /&gt;
&lt;br /&gt;
Get the dependencies. If you are working with large images (300 megapixels and up), you should have a libtiff-devel compiled with large file support and libstdc++6.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install pkg-config libtiff4-dev libboost-graph-dev libboost-thread-dev \&lt;br /&gt;
  libboost-filesystem-dev liblcms1-dev libglew1.5-dev libplot-dev libglut3-dev libopenexr-dev \&lt;br /&gt;
  libxi-dev libxmu-dev help2man texi2html texinfo fig2ps tidy gnuplot libxml-xpath-perl imagemagick&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once all dependencies are in place, get the code. The official repository has migrated from CVS to Mercurial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/enblend&lt;br /&gt;
cd ~/src/enblend&lt;br /&gt;
hg clone http://enblend.hg.sourceforge.net:8000/hgroot/enblend/enblend enblend.hg&lt;br /&gt;
cd enblend.hg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you already have checked out enblend, to update the code to the latest version you need to run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then create a build directory and build in there. And install the Package.&lt;br /&gt;
&lt;br /&gt;
The options below are good for modern multi-core computers.  For a single core, you may be better off setting ENABLE_OPENMP to OFF and ENABLE_IMAGECACHE to ON.  The two options are mutually exclusive.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir enblend.build&lt;br /&gt;
cd enblend.build&lt;br /&gt;
cmake ../enblend.hg -DENABLE_GPU:BOOL=ON -DENABLE_IMAGECACHE:BOOL=OFF -DENABLE_OPENMP:BOOL=ON \&lt;br /&gt;
  -DCPACK_BINARY_DEB:BOOL=ON -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF \&lt;br /&gt;
  -DCPACK_BINARY_STGZ:BOOL=OFF -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF \&lt;br /&gt;
  -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i enblend-4.1.1-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The old autotools way===&lt;br /&gt;
We are then ready to compile. The CXXFLAGS &amp;lt;tt&amp;gt;--param inline-unit-growth=60&amp;lt;/tt&amp;gt; is a workaround for x86_64 systems, Feb 2009, and apparently no longer needed (set by default). If you have an SMP machine and you're building a recent version, &amp;lt;tt&amp;gt;--disable-image-cache&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;--enable-openmp&amp;lt;/tt&amp;gt; will speed up enblend/enfuse massively but may cause segmentation faults; in that case you will be better off with &amp;lt;tt&amp;gt;--enable-image-cache&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;--disable-openmp.&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;-march=native&amp;lt;/tt&amp;gt; is also beneficial and -O2 is better than -O3.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make --makefile=Makefile.scm&lt;br /&gt;
mkdir BUILD&lt;br /&gt;
cd BUILD&lt;br /&gt;
CXXFLAGS=&amp;quot;--param inline-unit-growth=60 -march=native -O2&amp;quot; ../configure --disable-image-cache \&lt;br /&gt;
   --enable-openmp&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The second make step can be very long and memory consuming. Make sure you have enough swap space, and go get a healthy snack while the computer is compiling.&lt;br /&gt;
&lt;br /&gt;
If you encounter problems at any of these stages, please report back to the hugin-ptx mailing list. Report what command in the sequence you were executing, what machine/operating system, the revision checked out from CVS, and all other relevant information.&lt;br /&gt;
&lt;br /&gt;
You are then ready to install with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Libpano13 ==&lt;br /&gt;
&lt;br /&gt;
libpano13 is the new version of the PanoTools libraries. This is a necessary component for hugin, and we need to build it first.&lt;br /&gt;
To build libpano13 we need some libraries and particularly their &amp;lt;code&amp;gt;dev&amp;lt;/code&amp;gt; package:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install zlib1g zlib1g-dev libpng12-dev libjpeg62-dev libtiff4-dev cmake&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On older distributions, zlib1g and zlib1g-dev may not be found. In that case, the same library may be available with the names lib64z1 and lib64z1-dev.&lt;br /&gt;
&lt;br /&gt;
We then need to download the source code from SVN:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/libpano&lt;br /&gt;
cd ~/src/libpano&lt;br /&gt;
svn co https://panotools.svn.sourceforge.net/svnroot/panotools/trunk/libpano libpano13.svn&lt;br /&gt;
cd libpano13.svn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the future there is no need to get the whole source again. Just issue the following commands to bring your source up to date:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/libpano/libpano13.svn&lt;br /&gt;
svn up&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now start the building process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir libpano.build&lt;br /&gt;
cd libpano.build&lt;br /&gt;
cmake ../libpano13.svn -DCMAKE_INSTALL_PREFIX=/usr/local -DCPACK_BINARY_DEB:BOOL=ON \&lt;br /&gt;
   -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i libpano13-*-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The old autotools way ===&lt;br /&gt;
&lt;br /&gt;
The above described building process uses CMake to build libpano which has many advantages. Amongst others it creates a clean package to install / deinstall and decreases the likelihood of wrecking the system. However CMake support is relatively new in libpano. The old autotools way is documented below for completness. You should not need it. However if you do, make sure to run either the CMake build or the autotools build on fresh SVN checkouts to avoid interferences.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./bootstrap&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If any libraries are missing, the script will complain (or at least, let you know that some library hasn't been found). In that case you probably need to install the library. To find in what package is that library, a general rule is to run the command &amp;lt;code&amp;gt;apt-cache search ''missingfile''&amp;lt;/code&amp;gt;, find the relevant library and install both the library and the related &amp;lt;code&amp;gt;-dev&amp;lt;/code&amp;gt; package.&lt;br /&gt;
Run the &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt; script and repeat this process until you have met all the dependencies.&lt;br /&gt;
&lt;br /&gt;
Then we are ready to launch the make process with&lt;br /&gt;
&amp;lt;pre&amp;gt;make&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the library successfully compiles, you have to install it with&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo make install&lt;br /&gt;
sudo ldconfig&amp;lt;/pre&amp;gt;&lt;br /&gt;
The last part is for the OS to be aware of the new library (that has been installed in &amp;lt;code&amp;gt;/usr/local/lib&amp;lt;/code&amp;gt;).&lt;br /&gt;
We can now go back up one folder level and get ready for hugin.&lt;br /&gt;
&amp;lt;pre&amp;gt;cd ..&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Hugin ==&lt;br /&gt;
&lt;br /&gt;
=== Dependencies ===&lt;br /&gt;
&lt;br /&gt;
First we need to activate the &amp;lt;code&amp;gt;universe&amp;lt;/code&amp;gt; repository (in adept package manager, or by editing the /etc/apt/sources.lst file for example) and get the dependencies:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake libopenexr-dev libboost-dev boost-build libboost-thread-dev \&lt;br /&gt;
   libboost-graph-dev gettext libwxgtk2.8-dev libexiv2-dev libimage-exiftool-perl \&lt;br /&gt;
   libglew-dev libglut3-dev liblapack-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fetch the Source Code with Mercurial ===&lt;br /&gt;
&lt;br /&gt;
In May 2010 the Hugin project migrated from Subversion (SVN) to Mercurial (hg).  SVN-related instructions are generally outdated.&lt;br /&gt;
&lt;br /&gt;
First we clone the repository.  Unlike SVN, we do not need to choose at this moment which version of Hugin to download/build yet.&lt;br /&gt;
&lt;br /&gt;
If you already have a repository clone, you only need to pull the latest changes and update the code with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin/hugin.hg&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Else, you need to clone the repository and decide which version/branch to build with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/hugin&lt;br /&gt;
cd ~/src/hugin&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/hugin hugin.hg&lt;br /&gt;
cd hugin.hg&lt;br /&gt;
hg branches&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The `hg branches` command will list all available branches.  If you decide, e.g., to build the 2010.0 branch, you will update to it with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
hg update -C 2010.0 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Advanced Use - Multiple Source Trees ===&lt;br /&gt;
&lt;br /&gt;
You may want to build multiple versions of Hugin on your machine at the same time, e.g. when you want to build side by side a stable version for your productivity and a development version to give feedback to the developers.  In that case, you will clone the Mercurial repository that is already on your drive and update from it a source tree to a different branch.  Mercurial takes care of details such as optimizing disk usage.  The commands for this are:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
hg clone hugin.hg another_hugin&lt;br /&gt;
cd another_hugin&lt;br /&gt;
hg update -C default&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can have as many &amp;quot;another_hugin&amp;quot; folders as you want.  Just make sure, when pulling the latest updates from SourceForge, to first pull your main repository (the one you cloned from http://hugin.hg.sourceforge.net:8000/hgroot/hugin/hugin.  Then pull all others:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin/hugin.hg&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
cd ../another_hugin&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reference: [http://groups.google.com/group/hugin-ptx/msg/1ce824dd1364e9be]&lt;br /&gt;
&lt;br /&gt;
=== Configure the Build Environment ===&lt;br /&gt;
&lt;br /&gt;
'''Rule:''' You always want to build outside of the source tree to keep the source tree clean.  And to avoid confusion, if you have multiple source trees it is preferable to build for each of them in a separate build folder.&lt;br /&gt;
&lt;br /&gt;
Next we set up the build environment using cmake.&lt;br /&gt;
&lt;br /&gt;
If you compiled and installed libpano to a non standard location set the variables CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH to point to your install location's include and lib directories.&lt;br /&gt;
&lt;br /&gt;
If you are building for distribution, you want to set CMAKE_INSTALL_PREFIX=/usr&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin&lt;br /&gt;
mkdir hugin.hg-build&lt;br /&gt;
cd hugin.hg-build&lt;br /&gt;
cmake ../hugin.hg -DENABLE_LAPACK=YES -DCPACK_BINARY_DEB:BOOL=ON -DCPACK_BINARY_NSIS:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF -DCPACK_BINARY_TBZ2:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Build and Install ===&lt;br /&gt;
&lt;br /&gt;
Finally, we use make to build the code and package it, and dpkg to install it. Look for the version number in the .deb file created and edit the lines below accordingly: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i hugin-*-Linux.deb&lt;br /&gt;
sudo ldconfig&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Important:''' the package does not track dependencies yet, so it likely to fail on machines others than yours.&lt;br /&gt;
&lt;br /&gt;
Reference: [http://theseblog.free.fr/2007/10/building-hugin-in-ubuntu-feisty-fawn.php]&lt;br /&gt;
&lt;br /&gt;
== Automatic Control Point Detectors ==&lt;br /&gt;
&lt;br /&gt;
=== Autopano-sift-C ===&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libxml2-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To build&lt;br /&gt;
&lt;br /&gt;
(Note January 2010 / May 2010: Currently the autopano-sift-C SVN trunk, as well as Hg default tip, is unstable, use the 2.5.1 release tarball instead)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/apsc&lt;br /&gt;
cd ~/src/apsc&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/autopano-sift-C apsc.hg&lt;br /&gt;
cd apsc.hg&lt;br /&gt;
hg branches&lt;br /&gt;
hg update -C 2.5.1&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir apsc.hg.build&lt;br /&gt;
cd apsc.hg.build&lt;br /&gt;
cmake ../apsc.hg -DCMAKE_INSTALL_PREFIX=/usr/local -DCPACK_BINARY_DEB:BOOL=ON \&lt;br /&gt;
   -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i autopano-sift-C-*-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Match-n-shift ===&lt;br /&gt;
&lt;br /&gt;
Match-n-shift is yet an other Autopano-SIFT replacement. It comes in a bundle with pto file manipulation perl libraries and a rich selection of other tools that use nona, enblend, ImageMagick among other things. To use match-n-shift, you need to install at least the [http://search.cpan.org/dist/Panotools-Script/ Panotools::Script] library and some other perl modules. It requires:&lt;br /&gt;
&lt;br /&gt;
*  Image::Size 2.9&lt;br /&gt;
*  Storable 2.0&lt;br /&gt;
*  Image::ExifTool 6&lt;br /&gt;
&lt;br /&gt;
Chances are that you do not need to update Storable which is a standard perl module. To check the version of installed versions of these modules, write these lines to the command prompt:&lt;br /&gt;
&lt;br /&gt;
  perl -MStorable -le 'print Storable-&amp;gt;VERSION;'&lt;br /&gt;
  perl -MImage::Size -le 'print Image::Size-&amp;gt;VERSION;'&lt;br /&gt;
  perl -MImage::ExifTool -le 'print Image::ExifTool-&amp;gt;VERSION;'&lt;br /&gt;
&lt;br /&gt;
There are various ways to install or upgrade these modules. Ubuntu has binary packages for many perl modules, you can skip the CPAN installation below and type:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install libimage-size-perl libimage-exiftool-perl&lt;br /&gt;
&lt;br /&gt;
Alternatively, perl is an interpreted language and these modules are pure perl, so installing from source is an easy thing.&lt;br /&gt;
&lt;br /&gt;
The best place to install perl modules is directly from a CPAN archive. CPAN is short for Comprehensive Perl Archive Network. The program to interact with CPAN comes with all perl installations. Start it by running:&lt;br /&gt;
&lt;br /&gt;
  sudo cpan&lt;br /&gt;
&lt;br /&gt;
If this is your first time running the program you will be asked a number of questions (you can safely accept the suggested values). Last question lets you select a number of CPAN mirrors nearest to you.&lt;br /&gt;
&lt;br /&gt;
When all is done, you can enter the install commands after the 'cpan&amp;gt;' prompt:&lt;br /&gt;
&lt;br /&gt;
  install Image::Size Storable Image::ExifTool&lt;br /&gt;
&lt;br /&gt;
Answer 'y' to any question of dependencies and wait for install to complete. 'exit' leaves the cpan shell.&lt;br /&gt;
&lt;br /&gt;
Next, you need to retrieve and install the Panotools-Script collection&lt;br /&gt;
of perl libraries (Panotools::Script) and programs that use them -&lt;br /&gt;
including match-n-shift:&lt;br /&gt;
&lt;br /&gt;
  svn co https://panotools.svn.sourceforge.net/svnroot/panotools/trunk/Panotools-Script  Panotools-Script&lt;br /&gt;
  cd Panotools-Script&lt;br /&gt;
  perl Makefile.PL&lt;br /&gt;
  make&lt;br /&gt;
  make test&lt;br /&gt;
  sudo make install&lt;br /&gt;
&lt;br /&gt;
Just to confuse you, you can also ignore everything above and just install Panotools::Script and all its dependencies from CPAN. From command line, type:&lt;br /&gt;
&lt;br /&gt;
  sudo cpan Panotools::Script&lt;br /&gt;
&lt;br /&gt;
You can run match-n-shift from command line using the same parameters as autopano-c-complete.sh or you can modify hugin to run it for you:&lt;br /&gt;
&lt;br /&gt;
* start Hugin&lt;br /&gt;
* navigate the menu File to Preferences&lt;br /&gt;
* In the Preferences window, open the Autopano tab&lt;br /&gt;
* Select Autopano -&amp;gt; Autopano-SIFT&lt;br /&gt;
* tick the checkbox for Use alternative Autopano-SIFT program&lt;br /&gt;
* enter the full path to match-n-shift (/usr/local/bin/match-n-shift) in the Autopano-SIFT field&lt;br /&gt;
* enter the following string in the Arguments field:&lt;br /&gt;
 -f %f -v %v -c -p %p -o %o %i&lt;br /&gt;
&lt;br /&gt;
=== MatchPoint ===&lt;br /&gt;
&lt;br /&gt;
MatchPoint is a next generation CP generator. The result of a GSoC2007 project, it is still very experimental. Experience reports needed. Read more [http://groups.google.com/group/hugin-ptx/browse_thread/thread/cba2b2ce94dd9054 here]&lt;br /&gt;
&lt;br /&gt;
Matchpoint is now located inside the main hugin source tree, no need to checkout separately. It is compiled together with hugin, but not installed by default.&lt;br /&gt;
&lt;br /&gt;
* copy the MatchPoint executable into /usr/local/bin manually&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo cp src/matchpoint/matchpoint /usr/local/bin/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* edit /usr/local/bin/autopano-c-complete.sh (do it with sudo to have the necessary permission)&lt;br /&gt;
** line 79: replace the .key.gz extension with .key (not sure if matchpoint supports compression)&lt;br /&gt;
** lines 83 and 88: replace '''generatekeys &amp;quot;$arg&amp;quot; $FILENAME $SIZE''' with '''matchpoint &amp;quot;$arg&amp;quot; $FILENAME''' (not sure if the size option or any other options of the original generatekeys are applicable)&lt;br /&gt;
&lt;br /&gt;
=== Pan-o-matic ===&lt;br /&gt;
&lt;br /&gt;
Yet another control point generator [http://aorlinsk2.free.fr/panomatic/?p=home Home Page]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install libboost-dev&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download [http://aorlinsk2.free.fr/panomatic/download.php?d=7&amp;amp;v=0.9.4 Panomatic 0.9.4 bz2] and if you're on Ubuntu 9.10 or newer also the [http://aorlinsk2.free.fr/panomatic/panomatic_gcc44.patch patch] for the gcc4.4 compiler.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/panomatic&lt;br /&gt;
cd ~/src/panomatic&lt;br /&gt;
wget &amp;quot;http://aorlinsk2.free.fr/panomatic/download.php?d=7&amp;amp;v=0.9.4&amp;quot; -O panomatic-0.9.4-src.tar.bz2&lt;br /&gt;
wget http://aorlinsk2.free.fr/panomatic/panomatic_gcc44.patch patch&lt;br /&gt;
tar xvfj panomatic-0.9.4-src.tar.bz2&lt;br /&gt;
cd panomatic-0.9.4&lt;br /&gt;
patch -p 1 &amp;lt; ../panomatic_gcc44.patch&lt;br /&gt;
./configure&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To use Pano-o-matic, open Hugin&lt;br /&gt;
&lt;br /&gt;
* In File &amp;gt; Preferences &amp;gt; Autopano :&lt;br /&gt;
* Select Autopano-SIFT&lt;br /&gt;
* Check &amp;quot;Use alternative autopaon-SIFT program&amp;quot;&lt;br /&gt;
* Choose the path to the binary ( /usr/local/bin )&lt;br /&gt;
* In Arguments, put : -o %o %i&lt;br /&gt;
&lt;br /&gt;
==== Pablo's variation ====&lt;br /&gt;
&lt;br /&gt;
Around the end of the year 2009, Pablo integrated a [http://groups.google.com/group/hugin-ptx/browse_thread/thread/d9c0558c679cad52 new] experimental descriptor based on the geometric blur and DAISY papers. Also, Pablo said that the algorithm is not really based on a published approach, just on some ideas that are mentioned in a few of them, and its currently simpler than any of them:&lt;br /&gt;
&lt;br /&gt;
o geometric blur: [http://www.eecs.berkeley.edu/~aberg/gb.html]&lt;br /&gt;
&lt;br /&gt;
o daisy: [http://cvlab.epfl.ch/~tola/daisy.html]&lt;br /&gt;
&lt;br /&gt;
o descriptor learning: [http://cvlab.epfl.ch/~brown/learndesc/learndesc.html]&lt;br /&gt;
&lt;br /&gt;
To build that version of panomatic instead, follow these instructions:&lt;br /&gt;
&lt;br /&gt;
This is current the subject of a GSoC 2010 project and may be available in future versions of Hugin.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-python-dev bzr cmake libvigraimpex-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
bzr branch lp:~pablo.dangelo/hugin/panomatic-lib&lt;br /&gt;
mkdir build&lt;br /&gt;
cd build&lt;br /&gt;
cmake ../panomatic-lib&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To use the new descriptor the arguments for Hugin are: '''--sieve1size 100 --sieve2size 2 -o %o %i'''&lt;br /&gt;
&lt;br /&gt;
== Image-ExifTool ==&lt;br /&gt;
&lt;br /&gt;
ExifTool is a platform-independent Perl library plus a command-line application for reading, writing and editing meta information in image, audio and video files. [http://www.sno.phy.queensu.ca/~phil/exiftool/=home Home Page]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get purge libimage-exiftool-perl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget http://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-8.30.tar.gz&lt;br /&gt;
tar -xzf Image-ExifTool-8.30.tar.gz&lt;br /&gt;
cd Image-ExifTool-8.30&lt;br /&gt;
perl Makefile.PL&lt;br /&gt;
make test&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Pano Viewers ==&lt;br /&gt;
&lt;br /&gt;
=== PanoGLView ===&lt;br /&gt;
&lt;br /&gt;
PanoGLView is an OpenGL hardware accelerated interactive immersive viewer for equirectangular images.&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install wx-common&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To build and install:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/panoglview&lt;br /&gt;
cd ~/src/panoglview&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/panoglview pglv.hg&lt;br /&gt;
cd pglv.hg&lt;br /&gt;
hg update&lt;br /&gt;
./bootstrap&lt;br /&gt;
./configure&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== FreePV - DEPENDENCIES ARE BROKEN - FAILS TO BUILD ===&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake make pkg-config g++ mozilla-devscripts freeglut3-dev zlib1g-dev \&lt;br /&gt;
   libjpeg-dev libxext-dev libxmu-dev x11proto-xf86vidmode-dev libxxf86vm-dev libnspr4-dev \&lt;br /&gt;
   libxml2-dev libpng12-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To build&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
svn co https://freepv.svn.sourceforge.net/svnroot/freepv/freepv/trunk/ freepv&lt;br /&gt;
cd freepv&lt;br /&gt;
cmake .&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Notes for Packagers ==&lt;br /&gt;
* '''Outdated - need something equivalent with Hg''': before releasing a tarball, upgrade the Changelog with svn2cl&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ svn up&lt;br /&gt;
$ svn2cl&lt;br /&gt;
$ svn ci&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Hugin]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Hugin_Compiling_Ubuntu</id>
		<title>Hugin Compiling Ubuntu</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Hugin_Compiling_Ubuntu"/>
				<updated>2010-09-15T20:05:07Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: move instructions/description before the command&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These instructions are work in progress and updated when newer versions of Ubuntu are released or when Hugin introduces new dependencies. They have worked, at the time of release or soon thereafter, with all versions of Ubuntu/Kubuntu up until 10.04.&lt;br /&gt;
&lt;br /&gt;
They are likely to work only for the latest one, but you can check this page's history at the time that the older Ubuntu version was the most recent one to find the specifics for that version.&lt;br /&gt;
&lt;br /&gt;
Apart from the odd change in package name, nothing should be substantially different (and if does not work, please leave a comment on the [http://groups.google.com/group/hugin-ptx hugin-ptx mailing list]). Don't worry if the same package appears twice in an apt-get install line - apt-get will update existing packages if there is a newer version, and ignore duplicates if the latest version is already installed. On the other hand, if apt-get says that it can't find a package, it might be the odd change in package name. You can find a replacement package by using apt-cache search with a substring of the package required, e.g.&lt;br /&gt;
&amp;lt;pre&amp;gt;apt-cache search wxW&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The goal is to build hugin and the whole set of helper applications required.&lt;br /&gt;
&lt;br /&gt;
== Building environment ==&lt;br /&gt;
Since we are going to build hugin, libpano13 and enblend we need to download and install all the development packages. This is very easy with apt-get.&lt;br /&gt;
In a terminal window (K menu -&amp;gt; System -&amp;gt; Konsole or Applications -&amp;gt; Accessories -&amp;gt; Terminal (in Kubuntu), Applications -&amp;gt; Accessories -&amp;gt; Terminal (in Ubuntu))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install build-essential autoconf automake1.9 libtool flex bison gdb libc6-dev libgcc1 \&lt;br /&gt;
   cmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get the bleeding edge we'll need access to the SVN and Mercurial repositories, and for this we need the correct tools:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install subversion mercurial&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not necessary, but useful if you want to move to the next level and build packages for distribution (list is incomplete):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install subversion-tools&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not necessary, but useful if you want to revisit configuration sets in ccmake&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake-curses-gui&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get on the same page as far as file system layout is concerned, we'll create a folder to contain all source code in your home folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd&lt;br /&gt;
mkdir -p src&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Enblend ==&lt;br /&gt;
&lt;br /&gt;
Get the dependencies. If you are working with large images (300 megapixels and up), you should have a libtiff-devel compiled with large file support and libstdc++6.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install pkg-config libtiff4-dev libboost-graph-dev libboost-thread-dev \&lt;br /&gt;
  libboost-filesystem-dev liblcms1-dev libglew1.5-dev libplot-dev libglut3-dev libopenexr-dev \&lt;br /&gt;
  libxi-dev libxmu-dev help2man texi2html texinfo fig2ps tidy gnuplot libxml-xpath-perl imagemagick&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once all dependencies are in place, get the code. The official repository has migrated from CVS to Mercurial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/enblend&lt;br /&gt;
cd ~/src/enblend&lt;br /&gt;
hg clone http://enblend.hg.sourceforge.net:8000/hgroot/enblend/enblend enblend.hg&lt;br /&gt;
cd enblend.hg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you already have checked out enblend, to update the code to the latest version you need to run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then create a build directory and build in there. And install the Package&lt;br /&gt;
The options below are good for modern multi-core computers.  For a single core, you may be better off setting ENABLE_OPENMP to OFF and ENABLE_IMAGECACHE to ON.  The two options are mutually exclusive.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir enblend.build&lt;br /&gt;
cd enblend.build&lt;br /&gt;
cmake ../enblend.hg -DENABLE_GPU:BOOL=ON -DENABLE_IMAGECACHE:BOOL=OFF -DENABLE_OPENMP:BOOL=ON \&lt;br /&gt;
  -DCPACK_BINARY_DEB:BOOL=ON -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF \&lt;br /&gt;
  -DCPACK_BINARY_STGZ:BOOL=OFF -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF \&lt;br /&gt;
  -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i enblend-4.1.1-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The old autotools way===&lt;br /&gt;
We are then ready to compile. The CXXFLAGS &amp;lt;tt&amp;gt;--param inline-unit-growth=60&amp;lt;/tt&amp;gt; is a workaround for x86_64 systems, Feb 2009, and apparently no longer needed (set by default). If you have an SMP machine and you're building a recent version, &amp;lt;tt&amp;gt;--disable-image-cache&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;--enable-openmp&amp;lt;/tt&amp;gt; will speed up enblend/enfuse massively but may cause segmentation faults; in that case you will be better off with &amp;lt;tt&amp;gt;--enable-image-cache&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;--disable-openmp.&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;-march=native&amp;lt;/tt&amp;gt; is also beneficial and -O2 is better than -O3.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make --makefile=Makefile.scm&lt;br /&gt;
mkdir BUILD&lt;br /&gt;
cd BUILD&lt;br /&gt;
CXXFLAGS=&amp;quot;--param inline-unit-growth=60 -march=native -O2&amp;quot; ../configure --disable-image-cache \&lt;br /&gt;
   --enable-openmp&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The second make step can be very long and memory consuming. Make sure you have enough swap space, and go get a healthy snack while the computer is compiling.&lt;br /&gt;
&lt;br /&gt;
If you encounter problems at any of these stages, please report back to the hugin-ptx mailing list. Report what command in the sequence you were executing, what machine/operating system, the revision checked out from CVS, and all other relevant information.&lt;br /&gt;
&lt;br /&gt;
You are then ready to install with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Libpano13 ==&lt;br /&gt;
&lt;br /&gt;
libpano13 is the new version of the PanoTools libraries. This is a necessary component for hugin, and we need to build it first.&lt;br /&gt;
To build libpano13 we need some libraries and particularly their &amp;lt;code&amp;gt;dev&amp;lt;/code&amp;gt; package:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install zlib1g zlib1g-dev libpng12-dev libjpeg62-dev libtiff4-dev cmake&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On older distributions, zlib1g and zlib1g-dev may not be found. In that case, the same library may be available with the names lib64z1 and lib64z1-dev.&lt;br /&gt;
&lt;br /&gt;
We then need to download the source code from SVN:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/libpano&lt;br /&gt;
cd ~/src/libpano&lt;br /&gt;
svn co https://panotools.svn.sourceforge.net/svnroot/panotools/trunk/libpano libpano13.svn&lt;br /&gt;
cd libpano13.svn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the future there is no need to get the whole source again. Just issue the following commands to bring your source up to date:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/libpano/libpano13.svn&lt;br /&gt;
svn up&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now start the building process.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir libpano.build&lt;br /&gt;
cd libpano.build&lt;br /&gt;
cmake ../libpano13.svn -DCMAKE_INSTALL_PREFIX=/usr/local -DCPACK_BINARY_DEB:BOOL=ON \&lt;br /&gt;
   -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i libpano13-*-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The old autotools way ===&lt;br /&gt;
&lt;br /&gt;
The above described building process uses CMake to build libpano which has many advantages. Amongst others it creates a clean package to install / deinstall and decreases the likelihood of wrecking the system. However CMake support is relatively new in libpano. The old autotools way is documented below for completness. You should not need it. However if you do, make sure to run either the CMake build or the autotools build on fresh SVN checkouts to avoid interferences.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./bootstrap&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If any libraries are missing, the script will complain (or at least, let you know that some library hasn't been found). In that case you probably need to install the library. To find in what package is that library, a general rule is to run the command &amp;lt;code&amp;gt;apt-cache search ''missingfile''&amp;lt;/code&amp;gt;, find the relevant library and install both the library and the related &amp;lt;code&amp;gt;-dev&amp;lt;/code&amp;gt; package.&lt;br /&gt;
Run the &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt; script and repeat this process until you have met all the dependencies.&lt;br /&gt;
&lt;br /&gt;
Then we are ready to launch the make process with&lt;br /&gt;
&amp;lt;pre&amp;gt;make&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the library successfully compiles, you have to install it with&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo make install&lt;br /&gt;
sudo ldconfig&amp;lt;/pre&amp;gt;&lt;br /&gt;
The last part is for the OS to be aware of the new library (that has been installed in &amp;lt;code&amp;gt;/usr/local/lib&amp;lt;/code&amp;gt;).&lt;br /&gt;
We can now go back up one folder level and get ready for hugin.&lt;br /&gt;
&amp;lt;pre&amp;gt;cd ..&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building Hugin ==&lt;br /&gt;
&lt;br /&gt;
=== Dependencies ===&lt;br /&gt;
&lt;br /&gt;
First we need to activate the &amp;lt;code&amp;gt;universe&amp;lt;/code&amp;gt; repository (in adept package manager, or by editing the /etc/apt/sources.lst file for example) and get the dependencies:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake libopenexr-dev libboost-dev boost-build libboost-thread-dev \&lt;br /&gt;
   libboost-graph-dev gettext libwxgtk2.8-dev libexiv2-dev libimage-exiftool-perl \&lt;br /&gt;
   libglew-dev libglut3-dev liblapack-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fetch the Source Code with Mercurial ===&lt;br /&gt;
&lt;br /&gt;
In May 2010 the Hugin project migrated from Subversion (SVN) to Mercurial (hg).  SVN-related instructions are generally outdated.&lt;br /&gt;
&lt;br /&gt;
First we clone the repository.  Unlike SVN, we do not need to choose at this moment which version of Hugin to download/build yet.&lt;br /&gt;
&lt;br /&gt;
If you already have a repository clone, you only need to pull the latest changes and update the code with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin/hugin.hg&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Else, you need to clone the repository and decide which version/branch to build with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/hugin&lt;br /&gt;
cd ~/src/hugin&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/hugin hugin.hg&lt;br /&gt;
cd hugin.hg&lt;br /&gt;
hg branches&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The `hg branches` command will list all available branches.  If you decide, e.g., to build the 2010.0 branch, you will update to it with:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
hg update -C 2010.0 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Advanced Use - Multiple Source Trees ===&lt;br /&gt;
&lt;br /&gt;
You may want to build multiple versions of Hugin on your machine at the same time, e.g. when you want to build side by side a stable version for your productivity and a development version to give feedback to the developers.  In that case, you will clone the Mercurial repository that is already on your drive and update from it a source tree to a different branch.  Mercurial takes care of details such as optimizing disk usage.  The commands for this are:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
hg clone hugin.hg another_hugin&lt;br /&gt;
cd another_hugin&lt;br /&gt;
hg update -C default&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can have as many &amp;quot;another_hugin&amp;quot; folders as you want.  Just make sure, when pulling the latest updates from SourceForge, to first pull your main repository (the one you cloned from http://hugin.hg.sourceforge.net:8000/hgroot/hugin/hugin.  Then pull all others:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin/hugin.hg&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
cd ../another_hugin&lt;br /&gt;
hg pull&lt;br /&gt;
hg update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reference: [http://groups.google.com/group/hugin-ptx/msg/1ce824dd1364e9be]&lt;br /&gt;
&lt;br /&gt;
=== Configure the Build Environment ===&lt;br /&gt;
&lt;br /&gt;
'''Rule:''' You always want to build outside of the source tree to keep the source tree clean.  And to avoid confusion, if you have multiple source trees it is preferable to build for each of them in a separate build folder.&lt;br /&gt;
&lt;br /&gt;
Next we set up the build environment using cmake.&lt;br /&gt;
&lt;br /&gt;
If you compiled and installed libpano to a non standard location set the variables CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH to point to your install location's include and lib directories.&lt;br /&gt;
&lt;br /&gt;
If you are building for distribution, you want to set CMAKE_INSTALL_PREFIX=/usr&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~/src/hugin&lt;br /&gt;
mkdir hugin.hg-build&lt;br /&gt;
cd hugin.hg-build&lt;br /&gt;
cmake ../hugin.hg -DENABLE_LAPACK=YES -DCPACK_BINARY_DEB:BOOL=ON -DCPACK_BINARY_NSIS:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF -DCPACK_BINARY_TBZ2:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Build and Install ===&lt;br /&gt;
&lt;br /&gt;
Finally, we use make to build the code and package it, and dpkg to install it. Look for the version number in the .deb file created and edit the lines below accordingly: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i hugin-*-Linux.deb&lt;br /&gt;
sudo ldconfig&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Important:''' the package does not track dependencies yet, so it likely to fail on machines others than yours.&lt;br /&gt;
&lt;br /&gt;
Reference: [http://theseblog.free.fr/2007/10/building-hugin-in-ubuntu-feisty-fawn.php]&lt;br /&gt;
&lt;br /&gt;
== Automatic Control Point Detectors ==&lt;br /&gt;
&lt;br /&gt;
=== Autopano-sift-C ===&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libxml2-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To build&lt;br /&gt;
&lt;br /&gt;
(Note January 2010 / May 2010: Currently the autopano-sift-C SVN trunk, as well as Hg default tip, is unstable, use the 2.5.1 release tarball instead)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/apsc&lt;br /&gt;
cd ~/src/apsc&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/autopano-sift-C apsc.hg&lt;br /&gt;
cd apsc.hg&lt;br /&gt;
hg branches&lt;br /&gt;
hg update -C 2.5.1&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir apsc.hg.build&lt;br /&gt;
cd apsc.hg.build&lt;br /&gt;
cmake ../apsc.hg -DCMAKE_INSTALL_PREFIX=/usr/local -DCPACK_BINARY_DEB:BOOL=ON \&lt;br /&gt;
   -DCPACK_BINARY_NSIS:BOOL=OFF -DCPACK_BINARY_RPM:BOOL=OFF -DCPACK_BINARY_STGZ:BOOL=OFF \&lt;br /&gt;
   -DCPACK_BINARY_TBZ2:BOOL=OFF -DCPACK_BINARY_TGZ:BOOL=OFF -DCPACK_BINARY_TZ:BOOL=OFF&lt;br /&gt;
make package&lt;br /&gt;
sudo dpkg -i autopano-sift-C-*-Linux.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Match-n-shift ===&lt;br /&gt;
&lt;br /&gt;
Match-n-shift is yet an other Autopano-SIFT replacement. It comes in a bundle with pto file manipulation perl libraries and a rich selection of other tools that use nona, enblend, ImageMagick among other things. To use match-n-shift, you need to install at least the [http://search.cpan.org/dist/Panotools-Script/ Panotools::Script] library and some other perl modules. It requires:&lt;br /&gt;
&lt;br /&gt;
*  Image::Size 2.9&lt;br /&gt;
*  Storable 2.0&lt;br /&gt;
*  Image::ExifTool 6&lt;br /&gt;
&lt;br /&gt;
Chances are that you do not need to update Storable which is a standard perl module. To check the version of installed versions of these modules, write these lines to the command prompt:&lt;br /&gt;
&lt;br /&gt;
  perl -MStorable -le 'print Storable-&amp;gt;VERSION;'&lt;br /&gt;
  perl -MImage::Size -le 'print Image::Size-&amp;gt;VERSION;'&lt;br /&gt;
  perl -MImage::ExifTool -le 'print Image::ExifTool-&amp;gt;VERSION;'&lt;br /&gt;
&lt;br /&gt;
There are various ways to install or upgrade these modules. Ubuntu has binary packages for many perl modules, you can skip the CPAN installation below and type:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install libimage-size-perl libimage-exiftool-perl&lt;br /&gt;
&lt;br /&gt;
Alternatively, perl is an interpreted language and these modules are pure perl, so installing from source is an easy thing.&lt;br /&gt;
&lt;br /&gt;
The best place to install perl modules is directly from a CPAN archive. CPAN is short for Comprehensive Perl Archive Network. The program to interact with CPAN comes with all perl installations. Start it by running:&lt;br /&gt;
&lt;br /&gt;
  sudo cpan&lt;br /&gt;
&lt;br /&gt;
If this is your first time running the program you will be asked a number of questions (you can safely accept the suggested values). Last question lets you select a number of CPAN mirrors nearest to you.&lt;br /&gt;
&lt;br /&gt;
When all is done, you can enter the install commands after the 'cpan&amp;gt;' prompt:&lt;br /&gt;
&lt;br /&gt;
  install Image::Size Storable Image::ExifTool&lt;br /&gt;
&lt;br /&gt;
Answer 'y' to any question of dependencies and wait for install to complete. 'exit' leaves the cpan shell.&lt;br /&gt;
&lt;br /&gt;
Next, you need to retrieve and install the Panotools-Script collection&lt;br /&gt;
of perl libraries (Panotools::Script) and programs that use them -&lt;br /&gt;
including match-n-shift:&lt;br /&gt;
&lt;br /&gt;
  svn co https://panotools.svn.sourceforge.net/svnroot/panotools/trunk/Panotools-Script  Panotools-Script&lt;br /&gt;
  cd Panotools-Script&lt;br /&gt;
  perl Makefile.PL&lt;br /&gt;
  make&lt;br /&gt;
  make test&lt;br /&gt;
  sudo make install&lt;br /&gt;
&lt;br /&gt;
Just to confuse you, you can also ignore everything above and just install Panotools::Script and all its dependencies from CPAN. From command line, type:&lt;br /&gt;
&lt;br /&gt;
  sudo cpan Panotools::Script&lt;br /&gt;
&lt;br /&gt;
You can run match-n-shift from command line using the same parameters as autopano-c-complete.sh or you can modify hugin to run it for you:&lt;br /&gt;
&lt;br /&gt;
* start Hugin&lt;br /&gt;
* navigate the menu File to Preferences&lt;br /&gt;
* In the Preferences window, open the Autopano tab&lt;br /&gt;
* Select Autopano -&amp;gt; Autopano-SIFT&lt;br /&gt;
* tick the checkbox for Use alternative Autopano-SIFT program&lt;br /&gt;
* enter the full path to match-n-shift (/usr/local/bin/match-n-shift) in the Autopano-SIFT field&lt;br /&gt;
* enter the following string in the Arguments field:&lt;br /&gt;
 -f %f -v %v -c -p %p -o %o %i&lt;br /&gt;
&lt;br /&gt;
=== MatchPoint ===&lt;br /&gt;
&lt;br /&gt;
MatchPoint is a next generation CP generator. The result of a GSoC2007 project, it is still very experimental. Experience reports needed. Read more [http://groups.google.com/group/hugin-ptx/browse_thread/thread/cba2b2ce94dd9054 here]&lt;br /&gt;
&lt;br /&gt;
Matchpoint is now located inside the main hugin source tree, no need to checkout separately. It is compiled together with hugin, but not installed by default.&lt;br /&gt;
&lt;br /&gt;
* copy the MatchPoint executable into /usr/local/bin manually&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo cp src/matchpoint/matchpoint /usr/local/bin/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* edit /usr/local/bin/autopano-c-complete.sh (do it with sudo to have the necessary permission)&lt;br /&gt;
** line 79: replace the .key.gz extension with .key (not sure if matchpoint supports compression)&lt;br /&gt;
** lines 83 and 88: replace '''generatekeys &amp;quot;$arg&amp;quot; $FILENAME $SIZE''' with '''matchpoint &amp;quot;$arg&amp;quot; $FILENAME''' (not sure if the size option or any other options of the original generatekeys are applicable)&lt;br /&gt;
&lt;br /&gt;
=== Pan-o-matic ===&lt;br /&gt;
&lt;br /&gt;
Yet another control point generator [http://aorlinsk2.free.fr/panomatic/?p=home Home Page]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install libboost-dev&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download [http://aorlinsk2.free.fr/panomatic/download.php?d=7&amp;amp;v=0.9.4 Panomatic 0.9.4 bz2] and if you're on Ubuntu 9.10 or newer also the [http://aorlinsk2.free.fr/panomatic/panomatic_gcc44.patch patch] for the gcc4.4 compiler.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/panomatic&lt;br /&gt;
cd ~/src/panomatic&lt;br /&gt;
wget &amp;quot;http://aorlinsk2.free.fr/panomatic/download.php?d=7&amp;amp;v=0.9.4&amp;quot; -O panomatic-0.9.4-src.tar.bz2&lt;br /&gt;
wget http://aorlinsk2.free.fr/panomatic/panomatic_gcc44.patch patch&lt;br /&gt;
tar xvfj panomatic-0.9.4-src.tar.bz2&lt;br /&gt;
cd panomatic-0.9.4&lt;br /&gt;
patch -p 1 &amp;lt; ../panomatic_gcc44.patch&lt;br /&gt;
./configure&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To use Pano-o-matic, open Hugin&lt;br /&gt;
&lt;br /&gt;
* In File &amp;gt; Preferences &amp;gt; Autopano :&lt;br /&gt;
* Select Autopano-SIFT&lt;br /&gt;
* Check &amp;quot;Use alternative autopaon-SIFT program&amp;quot;&lt;br /&gt;
* Choose the path to the binary ( /usr/local/bin )&lt;br /&gt;
* In Arguments, put : -o %o %i&lt;br /&gt;
&lt;br /&gt;
==== Pablo's variation ====&lt;br /&gt;
&lt;br /&gt;
Around the end of the year 2009, Pablo integrated a [http://groups.google.com/group/hugin-ptx/browse_thread/thread/d9c0558c679cad52 new] experimental descriptor based on the geometric blur and DAISY papers. Also, Pablo said that the algorithm is not really based on a published approach, just on some ideas that are mentioned in a few of them, and its currently simpler than any of them:&lt;br /&gt;
&lt;br /&gt;
o geometric blur: [http://www.eecs.berkeley.edu/~aberg/gb.html]&lt;br /&gt;
&lt;br /&gt;
o daisy: [http://cvlab.epfl.ch/~tola/daisy.html]&lt;br /&gt;
&lt;br /&gt;
o descriptor learning: [http://cvlab.epfl.ch/~brown/learndesc/learndesc.html]&lt;br /&gt;
&lt;br /&gt;
To build that version of panomatic instead, follow these instructions:&lt;br /&gt;
&lt;br /&gt;
This is current the subject of a GSoC 2010 project and may be available in future versions of Hugin.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-python-dev bzr cmake libvigraimpex-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
bzr branch lp:~pablo.dangelo/hugin/panomatic-lib&lt;br /&gt;
mkdir build&lt;br /&gt;
cd build&lt;br /&gt;
cmake ../panomatic-lib&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To use the new descriptor the arguments for Hugin are: '''--sieve1size 100 --sieve2size 2 -o %o %i'''&lt;br /&gt;
&lt;br /&gt;
== Image-ExifTool ==&lt;br /&gt;
&lt;br /&gt;
ExifTool is a platform-independent Perl library plus a command-line application for reading, writing and editing meta information in image, audio and video files. [http://www.sno.phy.queensu.ca/~phil/exiftool/=home Home Page]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get purge libimage-exiftool-perl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget http://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-8.30.tar.gz&lt;br /&gt;
tar -xzf Image-ExifTool-8.30.tar.gz&lt;br /&gt;
cd Image-ExifTool-8.30&lt;br /&gt;
perl Makefile.PL&lt;br /&gt;
make test&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Pano Viewers ==&lt;br /&gt;
&lt;br /&gt;
=== PanoGLView ===&lt;br /&gt;
&lt;br /&gt;
PanoGLView is an OpenGL hardware accelerated interactive immersive viewer for equirectangular images.&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo apt-get install wx-common&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To build and install:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/src/panoglview&lt;br /&gt;
cd ~/src/panoglview&lt;br /&gt;
hg clone http://hugin.hg.sourceforge.net:8000/hgroot/hugin/panoglview pglv.hg&lt;br /&gt;
cd pglv.hg&lt;br /&gt;
hg update&lt;br /&gt;
./bootstrap&lt;br /&gt;
./configure&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== FreePV - DEPENDENCIES ARE BROKEN - FAILS TO BUILD ===&lt;br /&gt;
&lt;br /&gt;
Pre-Requisites:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install cmake make pkg-config g++ mozilla-devscripts freeglut3-dev zlib1g-dev \&lt;br /&gt;
   libjpeg-dev libxext-dev libxmu-dev x11proto-xf86vidmode-dev libxxf86vm-dev libnspr4-dev \&lt;br /&gt;
   libxml2-dev libpng12-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To build&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
svn co https://freepv.svn.sourceforge.net/svnroot/freepv/freepv/trunk/ freepv&lt;br /&gt;
cd freepv&lt;br /&gt;
cmake .&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Notes for Packagers ==&lt;br /&gt;
* '''Outdated - need something equivalent with Hg''': before releasing a tarball, upgrade the Changelog with svn2cl&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ svn up&lt;br /&gt;
$ svn2cl&lt;br /&gt;
$ svn ci&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Hugin]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/SoC_2009_idea</id>
		<title>SoC 2009 idea</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/SoC_2009_idea"/>
				<updated>2009-04-08T19:20:17Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Move Jim to secondary mentor&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
If you are a student willing to participate in The Google Summer of Code 2009, do as suggested below:&lt;br /&gt;
&lt;br /&gt;
* find out what ideas we have for SoC projects this year (read below);&lt;br /&gt;
* make up your mind, if you want to pick one of those tasks or if you have your own idea;&lt;br /&gt;
* join our community at [http://groups.google.com/group/hugin-ptx/ hugin-ptx];&lt;br /&gt;
* introduce yourself and tell us about your plans and wishes.&lt;br /&gt;
* add your proposal to the [[SoC_2009_student_proposals | student proposal page]] - see examples from [[SoC_2008_student_proposals | last year]]&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT:''' at the time of writing it is not known yet if we will be admitted to Google Summer of Code 2009. We can not guarantee you a place in the program, but we recommend you start preparing your application early as the application process is very competitive.&lt;br /&gt;
&lt;br /&gt;
= Development style =&lt;br /&gt;
&lt;br /&gt;
Most of the projects below are related to [[Hugin]], and some also relate to [[Panotools]] or [[tlalli]]. [[Hugin]] is mostly written in C++, and uses the [http://kogs-www.informatik.uni-hamburg.de/~koethe/vigra/ VIGRA image processing library] to support different types of images (for example, 8bit, 16bit and float (HDR) images). The core functionality is implemented in a platform independent C++ library, which is used by the GUI based on wxWidgets toolkit, and the command line programs ([[nona]], [[fulla]]). We also very much welcome contributions to [[Enblend]]/[[Enfuse]].&lt;br /&gt;
&lt;br /&gt;
The development of the projects should take place in a separate branch of the projects CVS (or SVN) repository. Communication with the mentors should usually happen through the appropriate mailing list. All code should work on the major platforms supported (Linux, OSX, Windows).&lt;br /&gt;
&lt;br /&gt;
= Mentors =&lt;br /&gt;
&lt;br /&gt;
The following people have volunteered to be primary mentors:&lt;br /&gt;
* Andrew Mihal&lt;br /&gt;
* Bruno Postle&lt;br /&gt;
* Daniel M. German&lt;br /&gt;
* Tom K. Sharpless&lt;br /&gt;
* Tim Nugent&lt;br /&gt;
* John Cupitt&lt;br /&gt;
* Sébastien Roy&lt;br /&gt;
&lt;br /&gt;
The following people have volunteered to be secondary mentors:&lt;br /&gt;
* Pablo d'Angelo&lt;br /&gt;
* Jim Watters&lt;br /&gt;
&lt;br /&gt;
= Application Template =&lt;br /&gt;
&lt;br /&gt;
[[SoC2009 Application Template]]&lt;br /&gt;
&lt;br /&gt;
= Possible Projects =&lt;br /&gt;
&lt;br /&gt;
We welcome you to propose your own ideas.&lt;br /&gt;
&lt;br /&gt;
Some of the [[SoC2007 projects]] and [[SoC_2008_ideas | SoC2008 projects]] proposals were not done in the past years and are potential projects for this year:&lt;br /&gt;
&lt;br /&gt;
* [[SoC2007_projects#Interactive panoramic viewer]] (This was completed but there is further possible work to be done, particularly a joint project with VLC to integrate the viewer in their media player)&lt;br /&gt;
* [[SoC2007_projects#Processing of very large images]] (using the VIPS framework, or even GEGL if ready)&lt;br /&gt;
* [[SoC2007_projects#Architectural Overhaul of Panotools]]&lt;br /&gt;
* [[SoC_2008_ideas#munin_.E2.80.94_interactive_openGL_based_GUI]]&lt;br /&gt;
* [[SoC_2008_ideas#enblend-enfuse_zenith.2Fnadir_and_more]]&lt;br /&gt;
* [[SoC_2008_ideas#Ghost_removal_for_enfuse]]&lt;br /&gt;
* [[SoC_2008_ideas#Lens_Database]] (the library part is done, see [[lensfun]], but there is still no system for updating the database)&lt;br /&gt;
* [[SoC_2008_ideas#tCA_Correction]] (this is done, the [[tca_correct]] tool now exists in the hugin-0.7.0 release)&lt;br /&gt;
* [[SoC_2008_ideas#Extend_hugin.27s_output_options_for_stitching]]&lt;br /&gt;
* [[SoC_2008_ideas#Utility_for_creating_a_Philosphere]]&lt;br /&gt;
&lt;br /&gt;
== Python Bindings ==&lt;br /&gt;
&lt;br /&gt;
expose all functions / libraries as Python bindings&lt;br /&gt;
&lt;br /&gt;
== 3D extension of panotools library ==&lt;br /&gt;
&lt;br /&gt;
the current assumption of panotools is that all images are shot from the same point of view in a different direction. develop and implement the mathematics to adjust for a shift in the point form which the pictures where taken.&lt;br /&gt;
&lt;br /&gt;
== enblend/enfuse gimp plugin ==&lt;br /&gt;
&lt;br /&gt;
Various GUIs for [[enblend]] and [[enfuse]] already exist (e.g. [http://www.harryvanderwolf.dyndns.org/index.php?lang=en&amp;amp;subject=ImageFuser&amp;amp;texttag=Imagefuser ImageFuser]), however nothing that would as useful as a gimp plugin. e.g. gimp opens multilayer TIFF files created by hugin and other tools, an option to 'blend visible layers with enblend' would allow manual adjustment of masks during blending.&lt;br /&gt;
&lt;br /&gt;
== bracketing pano model ==&lt;br /&gt;
&lt;br /&gt;
Currently the Hugin pano model has no provision for brackets / stacked images. This project would modify the pano model to make provision for image stacks to be considered as a single image or to be optimized locally as a stack before being optimized globally as a panorama.&lt;br /&gt;
&lt;br /&gt;
== hugin RAW support ==&lt;br /&gt;
&lt;br /&gt;
(note this proposal needs to be checked for sanity by someone who understands RAW formats)&lt;br /&gt;
&lt;br /&gt;
[[hugin]] is never going to be a [[RAW]] converter with all the options of a tool such as [[ufraw]], so I would be wary of adding half-baked RAW support to hugin that produced second-rate results.&lt;br /&gt;
&lt;br /&gt;
Something that ought to work very well would be if hugin/[[enblend]] could support [[RAW]] output, specifically 'linear [[DNG]]'. In this workflow, hugin would import RAW via [[dcraw]] as [[16bit]] linear data with no correction. It would then output linear DNG files which could be opened in any RAW converter for further tweaking.&lt;br /&gt;
&lt;br /&gt;
This would be a good summer of code project: modify [[hugin]] to use [[dcraw]] as an input plugin, integrate [[TCA]] correction, modify [[enblend]] to write linear [[DNG]] (or create a standalone tiff2dng tool), modify hugin GUI to enable it, fix any [[ufraw]] bugs reading linear DNG.&lt;br /&gt;
&lt;br /&gt;
== hugin colour balancing ==&lt;br /&gt;
&lt;br /&gt;
Internally [[hugin]] uses the EMoR photometric model. This means that adjusting the colour balance in hugin by altering the red/blue channel multipliers will give better results than doing the same in an image editor such as the [[Gimp]]/[[Photoshop]] - Provided the photometric parameters for the camera are calibrated properly.  There is potentially unexplored interesting stuff that can be done with this capability: grey pickers, temperature sliders, curve adjustment etc...&lt;br /&gt;
&lt;br /&gt;
A related problem is that hugin has an internal 'lens' representation that it used to link lens parameters for different photos together, this capability really should be split into three models: '''lens''' grouping photos with the same lens but potentially different CCDs, '''sensor''' grouping photos with the same CCD but potentially different lenses, '''position''' stacked images that can be rotated together (see [[#bracketing pano model]] above) - This is tinkering with hugin fundamentals and needs to be overseen by Pablo.&lt;br /&gt;
&lt;br /&gt;
== Straight-line detection for automated lens calibration ==&lt;br /&gt;
&lt;br /&gt;
One of the techniques for lens calibration is to [http://hugin.sourceforge.net/tutorials/calibration/ optimise straight lines]. Tom Sharpless suggests: &amp;quot;Hugin needs an easy and reliable way to do straight line lens calibration.  After many years using various calibration systems, photogrammetrists seem to have decided the straight line method is best.  It is robust, accurate, and can often use naturally occurring straight lines rather than special calibration rigs.  And it works well with fisheye lenses, which many other methods do not.&lt;br /&gt;
&lt;br /&gt;
The key is software that can automatically follow strong &amp;quot;line-like&amp;quot; curves and estimate their positions to subpixel accuracy. Then, using a reasonable model of the lens, an optimizer like the one in Hugin can fit parameters that straighten the lines.  Since the raw images of calibration lines are generally curved, a human may have to designate which lines are straight in reality.   However, fully automatic straight line calibration is theoretically possible, based on jointly optimizing lens parameters and estimated line shapes.&lt;br /&gt;
&lt;br /&gt;
A tool of this kind would be especially valuable for calibrating fisheye lenses, something the PanoTools family of s/w has always done poorly.  Part of the problem is that the original PT library used the equal-angle model for fisheye lenses, instead of the equal-area model most modern fisheyes are actually designed to.  Apparently libpano13 now has the equal-area model, too, but Hugin continues to use the equal-angle one.  So an important part of this project could be to revise Hugin to handle fisheye lenses more correctly.&lt;br /&gt;
&lt;br /&gt;
== Simple mask editing ==&lt;br /&gt;
&lt;br /&gt;
(note there was an automated masking project in 2008)&lt;br /&gt;
&lt;br /&gt;
Firstly there are two mask-editing scenarios and they are almost unrelated:&lt;br /&gt;
&lt;br /&gt;
# masking out objects that you don't want to appear in the scene.&lt;br /&gt;
# masking to put one object in-front of another.&lt;br /&gt;
&lt;br /&gt;
Number 2 is never going to be done in hugin, this is a job for an image&lt;br /&gt;
editor, feathered eraser brushes and clone tools.  For this we really need&lt;br /&gt;
some kind of multilayer output, and I would say that an enblend/enfuse Gimp&lt;br /&gt;
plugin to merge these layers two at a time should be enough to make this work well (see above).&lt;br /&gt;
&lt;br /&gt;
(Note there is a 'layered' target in the Makefile.equirect.mk 'plugin'&lt;br /&gt;
which does this multilayered TIFF output)&lt;br /&gt;
&lt;br /&gt;
The simplest way to provide number 1 is to change the crop tool into a&lt;br /&gt;
polygon editor for masking the original images, and store the polygon&lt;br /&gt;
coordinates in the 'i' lines of the .pto file - Masking would be performed&lt;br /&gt;
at the remapping stage as it currently is for circular crops.&lt;br /&gt;
&lt;br /&gt;
This is conceptually very simple.  At a later date the coordinates can be&lt;br /&gt;
translated back and forth between the photo and panorama spaces, then&lt;br /&gt;
automation of the mask can build on this.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Implementing a new projection model for the creation of mosaics in panotools ==&lt;br /&gt;
&lt;br /&gt;
Currently panotools implements a 3d spherical model for panorama projection. This means that it assumes that the camera rotates around its nodal point from one frame to another. This model is perfectly good for making spherical panoramas.&lt;br /&gt;
&lt;br /&gt;
There is, however, another use of registration and stitching of photographs: mosaics. In this scenario the object to be captured is a flat plane (such as&lt;br /&gt;
a wall, a aerial photograph, or partial scans of a larger work.&lt;br /&gt;
&lt;br /&gt;
This project will require to reverse engineer and document the current projection model, and propose&lt;br /&gt;
and implement a new one. The panotools remapping infrastructure is very flexible and should be&lt;br /&gt;
relatively straightforward to accomplish this.&lt;br /&gt;
&lt;br /&gt;
== zenith/nadir blending for enblend-enfuse ==&lt;br /&gt;
&lt;br /&gt;
Currently enblend-enfuse is not aware of the zenith/nadir seam in full spherical images. This sometimes results in star-like artifacts. Strategies have been devised to come around that limitation, such as re-projecting the concerned areas, blending them and merging them back. It would be nice if the code could do this automatically.&lt;br /&gt;
&lt;br /&gt;
== seam optimization in eblend-enfuse ==&lt;br /&gt;
&lt;br /&gt;
The seam optimization algorithm of enblend-enfuse can be improved. Andrew would be interested to mentor such a project.&lt;br /&gt;
&lt;br /&gt;
[[Category:Community:Project]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Talk:Fisheye_Projection</id>
		<title>Talk:Fisheye Projection</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Talk:Fisheye_Projection"/>
				<updated>2008-11-07T04:36:17Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: mention input and output of fisheye images giving examples.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Move all fisheye projections to this page.&lt;br /&gt;
&lt;br /&gt;
Panotools supports fisheye images as input and output.&lt;br /&gt;
&lt;br /&gt;
As input the possible fisheye projections are (will be)&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;nowiki&amp;gt;# &amp;lt;/nowiki&amp;gt;2 - Fisheye Equidistance Circular&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;# &amp;lt;/nowiki&amp;gt;3 - Fisheye Equidistance full-frame&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;# &amp;lt;/nowiki&amp;gt;8 - Fisheye Orthographic full-frame&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;# &amp;lt;/nowiki&amp;gt;10 - Fisheye Stereographic full-frame&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;# &amp;lt;/nowiki&amp;gt;19 - Fisheye Equisolid full-frame&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As output the possible fisheye projections are&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;# &amp;lt;/nowiki&amp;gt;3 - Fisheye Equidistance full-frame&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;# &amp;lt;/nowiki&amp;gt;4 - Fisheye Stereographic full-frame&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;# &amp;lt;/nowiki&amp;gt;9 - Lambert Azimuthal&amp;lt;br&amp;gt; &lt;br /&gt;
output from PanoTools is not limited to 180 deg.&lt;br /&gt;
&lt;br /&gt;
Add examples of these projections.&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Talk:Cylindrical_Projection</id>
		<title>Talk:Cylindrical Projection</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Talk:Cylindrical_Projection"/>
				<updated>2008-11-07T04:35:30Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: New page: add cylindrical projections&amp;lt;br&amp;gt; 8 - Lambert Equal Area Cylindrical&amp;lt;br&amp;gt; 11 - Miller Cylindrical&amp;lt;br&amp;gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;add cylindrical projections&amp;lt;br&amp;gt;&lt;br /&gt;
8 - Lambert Equal Area Cylindrical&amp;lt;br&amp;gt;&lt;br /&gt;
11 - Miller Cylindrical&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Heads</id>
		<title>Heads</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Heads"/>
				<updated>2008-05-05T18:59:27Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Added Jim Watters' Self made pan heads&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossary|Rigs to mount a camera on a tripod in order to pan and tilt around the [[No-parallax point]]}}&lt;br /&gt;
== Off the shelf ==&lt;br /&gt;
&lt;br /&gt;
There is a number of commercial panoramic tripod heads on the market, at widely varying prices. Panorama heads are actually very different kinds of animals and each manufacturer seems to have a different understanding about which functionality has to be part of such a head. Some are made of plastic or even &amp;quot;aircraft&amp;quot; aluminum, you might also fall in love with a stylish wooden head. The price range varies from &amp;quot;a round of beers&amp;quot; to something close to a visit on ISS. Some of them are a joke, a lot of them work nicely, some are specialised on certain body/lens combos, a few have that very professional wow factor. Choose yourself, and if unsure, don't hesitate to ask the members of [http://tech.groups.yahoo.com/group/PanoToolsNG/ Panotools NG] what fits your needs.&lt;br /&gt;
&lt;br /&gt;
=== 360Precision ===&lt;br /&gt;
&lt;br /&gt;
[http://www.360precision.com/ 360Precision] offer different panorama heads, all CNC machined but with that hand crafted touch. Very elegant products, and certainly more expensive than you might expect.  but are very predictable panoramic heads.  They are very sturdy and at the same time elegant.&lt;br /&gt;
&lt;br /&gt;
The '''Absolute''' is a very plausible option for those that make panoramas frequently and with the same equipment each time. It is built to a specific body and specific lens combination, saving the photographer the need to find the entrance pupil for their lens and midpoint of the camera. Because of this, it is a very precise way to batch-create panoramas without needing to generate control points for each panorama. The sacrifice is that you lose the option of using a different combination of camera and lens with this head until you purchase an additional lens arm. &lt;br /&gt;
&lt;br /&gt;
Although these limits may seem restrictive, the results are very, very predictable. One possible workflow includes calibrating a template in your software (hugin, PTGui, PTMac), and for every panorama afterward, apply the template and immediately skip to stitching. This saves you the time spent in generating and correcting control points in each panorama. For those that can save significant amounts of time and/or money by doing this, this head truly is a life saver. The generation of the template can be time consuming but may save you hours upon hours of post processing time compared to other solutions.&lt;br /&gt;
&lt;br /&gt;
It is possible to upgrade the 360Precision in modular ways, for instance if you decide to use a different lens for your panoramas, you can order just the lens arm you need, or if you decide to use a different camera for panoramas, you can order just the different camera leg and use the same lens arm.&lt;br /&gt;
&lt;br /&gt;
The '''Adjuste''' is nearly as strong as the Absolute but is easily adaptable for different camera / lens setups. The diameter of the rotating base is smaller which makes for a better (smaller) footprint if you shoot full spherical panoramas.&lt;br /&gt;
&lt;br /&gt;
=== Agnos ===&lt;br /&gt;
&lt;br /&gt;
[http://www.agnos.com Agnos] - Italian manufacturer of panoramic heads and accesories for panoramic photography. I bought an adapter for my fc-e9 fisheye adapter and it is very well built and of a good quality. They will also release (if they didn't yet) a new solution for creating a spherical pano out of 3 pics taken at 120 degrees each with a DSLR rotated at 45 degrees (!).&lt;br /&gt;
&lt;br /&gt;
=== Bogen ===&lt;br /&gt;
&lt;br /&gt;
A more expensive option is the Bogen/Manfrotto 303SPH, a large, but well made head. It could double as a boat anchor! I (Rick) have the 303SPH and the Agnos mentioned below.  Bogen has a site dedicated to their line of pano heads [http://www.manfrotto.com/303SPH/ Manfrotto 303SPH Mini-Site]. Some users complain that the head sags - I have not experienced this. This head can be used with virtually any lens / camera combination. I used to use it with the FC-E9 fisheye, but the head left too large of a footprint in the image. &amp;lt;small&amp;gt;--[[User:Add360.com|Add360.com]] 03:21, 7 Nov 2005 (EST)&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fanotec ===&lt;br /&gt;
&lt;br /&gt;
[http://www.NodalNinja.com/ Nodal Ninja 3 MKII (NN3 MKII) and Nodal Ninja 5 (NN5)] built by Fanotec, satisfies price (from $199), quality, ease of use, and portability (less than 500 grams). Used by professionals and amateurs alike this is an easy to use full spherical panoramic tripod head. With this pano head you are able to produce not only single row 360 degree cylindrical panoramas but multirow 360x180 degree spherical panoramas, or mosaics. Rail stops, one for each of two adjustment rails, allow you to mount your camera/lens in the exact same position each time, once initial settings are learned. This eliminates second guessing on where the [http://wiki.panotools.org/Entrance_pupil no parallax point] is on your lens.&lt;br /&gt;
You can mount your camera in Landscape mode as well as use many third party quick release plates. The MKII also uses an interchangeable detent ring system. Reversible detent rings offer click stops at varying degrees to include 15/18 15/0 (default), 18/20, 25.7/36, and 45/60 degrees. All this packs nicely into a well made hard shelled case which is foamed line with dual zippers. &amp;lt;br&amp;gt;&lt;br /&gt;
NN3 MKII is &amp;quot;universal&amp;quot; fitting most point and shoot cameras, SLR's and DSLR's. This model does not support larger DSLR's however like the D2X, or Canon Mark II type cameras or DSLR's using battery grips.  &amp;lt;br&amp;gt;For these cameras Fanotec is developing the Nodal Ninja 5.&lt;br /&gt;
Note: The MKII is an updated NN3 with improved lower rotator.&amp;lt;br&amp;gt;&lt;br /&gt;
[http://nodalninja.com/nodal_ninja_5_pro_pan_head.html Nodal Ninja 5] is a more professional grade head with longer arms (about 40mm longer than NN3 MKII). This helps to accommodate larger cameras like the Nikon D3 or [http://nodalninja.com/nn5_5.html Canon 1ds], MK II, MK III, and cameras with battery packs. NN5 will also accommodate many medium to [http://nodalninja.com/nn5_46.html large format cameras]. Larger lenses like 17-40mm up to the longer [http://nodalninja.com/db_NN5__RO_70_200mm1.jpg Nikon 70-200mm F2.8] can also easily be accommodated.&lt;br /&gt;
&lt;br /&gt;
=== Hama ===&lt;br /&gt;
&lt;br /&gt;
Distributor of -&amp;gt; [[#Panamatic|Panamatic]]&lt;br /&gt;
&lt;br /&gt;
=== Jasper ===&lt;br /&gt;
&lt;br /&gt;
For me, the [http://www.stereoscopy.com/jasper/panorama.html Jasper Engineering] head has been an excellent value. At about $200, it's strong enough for serious 35mm or comparable digital cameras, which can be used horizontally or (with the included adapter) vertically. [[Nodal Point]] correction is horizontal and covers a variety of focal lengths as long as (I'm guessing) 135mm or more. Like so many heads, a bubble level is included, but hard to read when the head is set up at eye level. The builder will add custom touches very reasonably, In my case I put a Wimberly/Arca quick realease plate on the base. The base is machined aluminum; they provided a peel and stick piece of rubber for the base (to keep the plate from slipping) for about ten bucks.&lt;br /&gt;
&lt;br /&gt;
Pivoting parts on this unit are tightened with cap screws which have patent caps on them to give more leverage in tightening. I ended up prying these off and taking a t-handle allen wrench with me. I'm using a D-70 and a 17-35 usually; a smaller camera would be fine without that extra step.&lt;br /&gt;
&lt;br /&gt;
=== Kaidan ===&lt;br /&gt;
 &lt;br /&gt;
[http://www.kaidan.com Kaidan] offers two tripod heads. The [http://www.kaidan.com/Detail.bok?no=146 KiWi] and [http://www.kaidan.com/products/QPIV.html QuickPan]. The KiWi when equipped with [http://www.kaidan.com/Detail.bok?no=148 Twin-Axis Bracket] will work for smaller cameras equipped with fisheye lenses. This is a single-row solution. Kaidan's QuickPan Spherical will allow for multirow panoramas with either rectilinear or fisheye lenses.  The aforementioned Twin-Axis Bracket will also work on the QuickPan for single-row fisheye panoramas.&lt;br /&gt;
&lt;br /&gt;
Kaidan is also due to release their QuickPan Professional tripod head in the early part of 2006.&lt;br /&gt;
&lt;br /&gt;
=== KingPano ===&lt;br /&gt;
&lt;br /&gt;
[http://www.kingpano.com/ KingPano] is a very affordable pan/tilt head that allows for horizontal and vertical rotation around the nodal point i.e. for [[high resolution partial panoramas|multi row panoramas]].&lt;br /&gt;
&lt;br /&gt;
=== Manfrotto ===&lt;br /&gt;
&lt;br /&gt;
see -&amp;gt; Bogen&lt;br /&gt;
&lt;br /&gt;
=== MK PanoMachine / MK PanoHead ===&lt;br /&gt;
[http://www.marc-kairies.de/ MK Panorama Systeme], Germany, the new '''MK PanoMachine version 3.1''' is an automatic rotating VR head designed to move your camera from one shot to the next - the camera is released exactly in the right position. Version 3.1 has a new time-lapse mode as well as an integrated power management.&lt;br /&gt;
&lt;br /&gt;
MK Panorama Systeme, Germany launched with the new '''MK PanoHead''' a fine mechanical precision and high-quality 360° panoramic tripod head on the world market. &lt;br /&gt;
&lt;br /&gt;
Key features:&lt;br /&gt;
&lt;br /&gt;
• Panoramic tripod head for the stitching of digital panoramas&amp;lt;br /&amp;gt;&lt;br /&gt;
• Suited to create cylindrical, spherical and cubic panoramas as well as Multi-Row&amp;lt;br /&amp;gt;&lt;br /&gt;
• 360° panoramic plate with pre adjustable scale and integrated circular bubble&amp;lt;br /&amp;gt;&lt;br /&gt;
• Mount the MK PanoHead bracket alternatively on the Manfrotto MA 300 N or a 360° plate of your choice&amp;lt;br /&amp;gt;&lt;br /&gt;
• Motorize the MK PanoHead bracket with the MK PanoMachine or ROUNDSHOT VR Drive (with adapter)&amp;lt;br /&amp;gt;&lt;br /&gt;
• tilt up and down + / - 90° exactly in the nodal point (click-stops each 15°)&amp;lt;br /&amp;gt;&lt;br /&gt;
• The MK PanoHead allows the use of heavy digital SLR cameras and medium format cameras&amp;lt;br /&amp;gt;&lt;br /&gt;
• High-quality materials, fine mechanical work - Made in Germany&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The company also provides a rental service.&lt;br /&gt;
&lt;br /&gt;
=== Nodal Ninja ===&lt;br /&gt;
&lt;br /&gt;
see -&amp;gt; [[#Fanotec|Fanotec]] (above) Manufacturer of Nodal Ninja Pano Heads.&lt;br /&gt;
&lt;br /&gt;
=== Novoflex ===&lt;br /&gt;
[http://www.novoflex.com/ Novoflex] is a German company with a good reputation in building high-precision photographic accessories.&lt;br /&gt;
The company offers two already pre-assembled products:&lt;br /&gt;
&lt;br /&gt;
The non-tiltable [http://www.novoflex.com/english/html/fr_esz8.htm Panorama VR System] for cylindrical panoramas.&lt;br /&gt;
&lt;br /&gt;
The universal [http://www.novoflex.com/english/html/fr_esz10.htm Panorama VR Pro System] for spherical panoramas.&lt;br /&gt;
&lt;br /&gt;
All parts are built modular to be combine- and interchangeable with others parts from Novoflex. E.g. you can use a standard angle bracket or focusing rack as a part of your panohead setup. This makes it easy to create a custom panorama head that fits your specific needs. Also, it gives you the option to upgrade your setup - or easily re-order a broken part.&lt;br /&gt;
&lt;br /&gt;
=== Panamatic ===&lt;br /&gt;
&lt;br /&gt;
A more than affordable solution. Judging from information available at their [http://www.panamatic.com/ web site] this &amp;quot;head&amp;quot; is not only extremely inexpensive but also mostly useless. No way to mount a camera in a way so that the lens turns around it's NPP, and no click stops. The pan head of a standard tripod isn't worse but maybe more stable. Also marketed as [http://www.photoaxe.com/hama-panorama-kit/ Hama Panorama Kit]. Better try handheld shots...&lt;br /&gt;
&lt;br /&gt;
=== Panosaurus ===&lt;br /&gt;
&lt;br /&gt;
Very affordable pan/tilt head which allows for horizontal and vertical rotation around the nodal point i.e. for [[high resolution partial panoramas|multi row panoramas]] are the, [http://gregwired.com/pano/Pano.htm Panosaurus] and [http://www.kingpano.com/ KingPano].&lt;br /&gt;
&lt;br /&gt;
=== Pinnacle VR ===&lt;br /&gt;
&lt;br /&gt;
Priced towards the upper end of the middle ($399) is the Pinnacle VR Universal Pano Head that will work with any camera where the tripod hole is in the center of the lens axis. Using pin registration, it can accomodate cameras with or without battery grips attached and supports a wide range of lenses from fisheye to 135mm (on a full frame sensor, 80mm on an APS sized sensor). Details and sample sets of images with PTGui templates can be found at [http://www.pinnacle-vr.com/ Pinnacle VR]&lt;br /&gt;
&lt;br /&gt;
=== Really Right Stuff ===&lt;br /&gt;
[http://reallyrightstuff.com/pano/04.html RRS] panorama equipment is nicely machined, modular gear. &lt;br /&gt;
&lt;br /&gt;
=== Rodeon VR ===&lt;br /&gt;
The [http://www.dr-clauss.de/RODEONVRHead_e.htm Rodeon VR Head] is a programmable pano head. Tilt and Rotation are motorised, all steps can be controlled using a Bluetooth device (Notebook or PDA).&lt;br /&gt;
&lt;br /&gt;
=== Reviews ===&lt;br /&gt;
Various unbiased reviews are floating about on many of these panorama tripod heads:&lt;br /&gt;
&lt;br /&gt;
'''360Precision''':&lt;br /&gt;
[http://www.360rage.com/panorama-hardware-item.php?i=2 360 Rage] | &lt;br /&gt;
[http://www.panoguide.com/forums/tipsntricks/2179 PanoGuide Forum] | &lt;br /&gt;
[http://www.chem.ox.ac.uk/oxfordtour/tutorial/index.asp?ID=40&amp;amp;pagename=360precision%20Adjuste Dr. Karl Harrison] | &lt;br /&gt;
[http://www.fromparis.com/html/technical_us_quicktime_vr_360precision_adjuste_head_part1.php Eric Rougier] | &lt;br /&gt;
&lt;br /&gt;
'''Kaidan''':&lt;br /&gt;
[http://www.precomania.com/rating_getprodrev.php/product_id=9277958/id_type=M Precomania] | &lt;br /&gt;
[http://www.vrphotography.com/data/pages/casestudies/vrheadreview1103.html VRPhotography] Note: This is an older review | &lt;br /&gt;
[http://rosaurophotography.com/html/panoramas/vr_review/quickpanpro/quickpanpro_review.html Rosauro Ona] |&lt;br /&gt;
&lt;br /&gt;
'''KingPano''':&lt;br /&gt;
[http://www.tawbaware.com/kingpano_review.htm Max Lyons / Tawbaware] |&lt;br /&gt;
&lt;br /&gt;
'''Manfrotto 303SPH''':&lt;br /&gt;
[http://www.rosaurophotography.com/html/panoramas/vr_review/303sph/303sph_review.html Rosauro Ona] | &lt;br /&gt;
[http://www.precomania.com/publicprofile.php/productreviews/userid=624974 Precomania] | &lt;br /&gt;
[http://www.vrphotography.com/data/pages/casestudies/vrheadreview1103.html VRPhotography] | &lt;br /&gt;
&lt;br /&gt;
'''Nodal Ninja''':&lt;br /&gt;
[http://www.applelinks.com/index.php/more/nodal_ninja_3_review_of_camera_supporter_for_panomarama_photos/ Applelinks] | &lt;br /&gt;
[http://www.rosaurophotography.com/html/panoramas/vr_review/nn3/nn3_review.html Rosauro Ona] |&lt;br /&gt;
[http://www.xyzcomputing.com/index.php?option=content&amp;amp;task=view&amp;amp;id=1000&amp;amp;Itemid=2 Josh Korwin of XYZ Computing] |&lt;br /&gt;
[http://www.fromparis.com/html/technical_us_quicktime_vr_small_nadir_hole.php Eric Rougier] |&amp;lt;br&amp;gt; &lt;br /&gt;
[http://www.pixelmania.nl/artikel.aspx?rubriekid=2&amp;amp;artikelid=301 Pixelmania (dutch)] | &lt;br /&gt;
[http://www.360rage.com/panorama-hardware-item.php?i=9 360 Rage] | &lt;br /&gt;
[http://www.galerie-photo.com/panoramique-nodal-ninja.html Thierry Rebours (french)] |&lt;br /&gt;
[http://www.camera2go.nl/readarticle.php?article_id=11 Cameraportal (dutch)] |&amp;lt;br&amp;gt;&lt;br /&gt;
[http://www.panoguide.com/forums/tipsntricks/1984/ John Houghton Panoguide] |&lt;br /&gt;
[http://www.tawbaware.com/nn5_review.html Max Lyons/Tawbaware (NN5)] |&lt;br /&gt;
[http://www.digitalmagasinet.dk/show.asp?ID=1571 Digital Magasinet (Dannish)] |&amp;lt;br&amp;gt;&lt;br /&gt;
[http://nodalninja.com/DPhotoUK_05_07_1024.jpg Digital Photography Magazine May 07] |&lt;br /&gt;
[http://www.vrmag.org/vartist/VR_industry/REVIEW_OF_NODAL_NINJA_NN3_AND_PREVIEW_OF_THE_NEW_NN5.html VR Mag] |&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Novoflex''':&lt;br /&gt;
[http://www.360rage.com/panorama-hardware-item.php?i=12 360 Rage] | &lt;br /&gt;
&lt;br /&gt;
'''Panosaurus''': &lt;br /&gt;
[http://www.tawbaware.com/panosaurus_review.htm Tabaware] | &lt;br /&gt;
[http://panoramicearth.blogspot.com/2006/06/part-2-panorsaurus-head-review.html Peter Watts] | &lt;br /&gt;
[http://www.panoguide.com/forums/qna/2467 Panoguide forum] |&lt;br /&gt;
&lt;br /&gt;
'''Pinnacle VR''':&lt;br /&gt;
[http://www.seeit360.net/index.php?page=pvr Sacha Griffin] |&lt;br /&gt;
&lt;br /&gt;
== Lens brackets ==&lt;br /&gt;
Another way to keep the lens/camera fixed to the [[no-parallax point]] are lens brackets that directly mounted onto the lens itself. The advantages are less vibrations but the drawback is that you need one bracket for each lens. They are a special type of a [[Nodal point adapters|nodal point adapter]].&lt;br /&gt;
&lt;br /&gt;
Some examples:&lt;br /&gt;
&lt;br /&gt;
* Agnos [http://www.agnos.com/catalogo.htm?v_categ_lista=PR001-RINGT Lens ring] &lt;br /&gt;
* Laser cut wooden brackets from [http://www.bophoto.com/bracket/ Pano Bracket from bophoto] &lt;br /&gt;
* Self made bracket from [http://homepage.mac.com/wkaemena/Nikon8Head.jpg Willy Kaemena]&lt;br /&gt;
&lt;br /&gt;
== Self made ==&lt;br /&gt;
&lt;br /&gt;
If you want to build our own pan/tilt head you might get some ideas from those shown below.&lt;br /&gt;
&lt;br /&gt;
Multirow&lt;br /&gt;
* [http://www.einem.net/~dersch/heliarVR/heliarVR0.html Helmut Dersch]&lt;br /&gt;
* [http://www.erik-krause.de/panohead Erik Krause]&lt;br /&gt;
* [http://www.trozzreaxxion.net/misc/panorama/panorama.html Mike Runge (German)]&lt;br /&gt;
* [http://blog.robertbreuer.com/?p=16 Robert Breuer (German)]&lt;br /&gt;
* [http://www.dffe.at/panohead/ Bernhard Vogl]&lt;br /&gt;
* [http://www.nyfeler-mueller.ch/MonoPodHead/QTVR/MonopodHeadQTVR.html Peter Nyfeler/Monopod]&lt;br /&gt;
* [http://www.nyfeler-mueller.ch/PanoHeadMulti/PanoHeadMulti.html Peter Nyfeler/Tripod]&lt;br /&gt;
* [http://www.chem.uky.edu/xray/people/Parkin/panohead/panohead.html Sean Parkin (English)]&lt;br /&gt;
* [http://www.nodalsamurai.co.uk/nodalsamurai.html Pete Loud's Nodal Samurai]&lt;br /&gt;
* [http://www.scotthendershot.com/Panohead/UniversalPanoHead.htm Scott Hendershot]&lt;br /&gt;
* [http://www.pbase.com/atucker/image/40469012 Tom Sherry]&lt;br /&gt;
* [http://photocreations.ca/equipment/index.html Jim Watters]&lt;br /&gt;
Single row&lt;br /&gt;
* [http://www.heiliger-net.de/panphoto/n_hardware.htm Panphoto.de (German)]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Material supply ===&lt;br /&gt;
Since you often can't get the popular aluminium profiles in your local do-it-yourself store here some possible suppliers:&lt;br /&gt;
* Item International http://www.item-international.com - Internationally active &lt;br /&gt;
* CAP http://www.aluprofil.com - situated in Austria&lt;br /&gt;
* MayTec http://www.maytec.org - situated in Germany&lt;br /&gt;
&lt;br /&gt;
A web search for &amp;quot;aluprofil&amp;quot; or &amp;quot;aluminium profile&amp;quot; might reveal other suppliers.&lt;br /&gt;
&lt;br /&gt;
[[Category:Hardware]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Fisheye_Projection</id>
		<title>Fisheye Projection</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Fisheye_Projection"/>
				<updated>2008-03-16T22:38:05Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: changed broken external link to one that works&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossary|A projection where the distance from the centre of the image to a point is proportional to the equivalent spatial angle.}}&lt;br /&gt;
[[Image:big_ben_circ_fisheye.jpg|frame|right|Circular Fisheye projection, with permission from Ben Kreunen]]&lt;br /&gt;
[[Image:big_ben_ff_fisheye.jpg|frame|right|Fullframe Fisheye projection, with permission from Ben Kreunen]]&lt;br /&gt;
&lt;br /&gt;
This is a class of [[Projections|projections]] for mapping a portion of the surface of a sphere to a flat image, typically a camera's film or detector plane.  In a fisheye projection the distance from the centre of the image to a point is close to proportional to the true angle of separation.&lt;br /&gt;
&lt;br /&gt;
Commonly there are two types of fisheye distinguished: circular [[fisheyes]] and fullframe [[fisheyes]]. However, both follow the same projection geometrics. The only difference is one of [[Field of View]]: for a circular fisheye the circular image fits (more or less) completely in the frame, leaving blank areas in the corner. For the full frame variety, the image is over-filled by the circular fisheye image, leaving no blank space on the film or detector.  A circular fisheye can be made full frame if you use it with a smaller sensor/film size (and vice versa), or by zooming a fisheye adaptor on a zoom lens.&lt;br /&gt;
&lt;br /&gt;
There is no single fisheye projection, but instead there are a class of projection transformation all referred to as ''fisheye'' by various lens manufacturers, with names like ''equisolid angle projection'', or ''equidistance fisheye''.  Less common are traditional spherical projections which map to circular images, such as the [http://mathworld.wolfram.com/OrthographicProjection.html orthographic] (lenses commonly designated ''OP'') or [[Stereographic Projection|stereographic]] projections.  Luckily, most of these related projections can be dealt with in a simple way. The following explanation is taken from a posting by [[Helmut Dersch]] (link to original see below):&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt;\theta\,&amp;lt;/math&amp;gt;''' is the angle between a point in the real world and the optical axis, which goes from the center of the image through the center of the lens.&lt;br /&gt;
&lt;br /&gt;
The focal length f of common fisheye lenses corresponds&lt;br /&gt;
quite simple to &amp;lt;math&amp;gt;\theta&amp;lt;/math&amp;gt; and the&lt;br /&gt;
radial position R of a point on the image on the film or sensor:&lt;br /&gt;
 &amp;lt;math&amp;gt;R = 2*f*sin\left(\frac{\theta}{2}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So for 90 degrees, which would be the maximum&lt;br /&gt;
theta of a lens with 180 degree [[Field of View]], f=8mm, you get&lt;br /&gt;
R = 11.3mm, which is the radius of the image circle.&lt;br /&gt;
&lt;br /&gt;
This projection model applies to the Nikon 8mm&lt;br /&gt;
and the Sigma 8mm (which actually has f=7.8mm).&lt;br /&gt;
This is also what you get when you look into&lt;br /&gt;
a convex mirror.&lt;br /&gt;
&lt;br /&gt;
Some older Nikon lenses (e.g. the 7.5mm) try to&lt;br /&gt;
approach a linear mapping (theta in rad)&lt;br /&gt;
 &amp;lt;math&amp;gt;R = f*\theta\,&amp;lt;/math&amp;gt;&lt;br /&gt;
and succeed more or less.&lt;br /&gt;
&lt;br /&gt;
For most practical applications, you won't see a big&lt;br /&gt;
difference between the two.&lt;br /&gt;
&lt;br /&gt;
Btw, a rectilinear lens has a mapping&lt;br /&gt;
 &amp;lt;math&amp;gt;R=f*tan(\theta)\,&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We can assume that most newer fisheyes follow the first mapping scheme.&lt;br /&gt;
&lt;br /&gt;
Complete text of the mail can be found at W.J. Markerink's [http://www.a1.nl/phomepag/markerink/fishyfaq.htm page about fisheye analysis]&lt;br /&gt;
&lt;br /&gt;
More information on [[fisheyes]] and their distortions from [http://www.bobatkins.com/photography/technical/field_of_view.html Bob Atkins Photography]&lt;br /&gt;
[[Category:Glossary]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/SoC_2008_ideas</id>
		<title>SoC 2008 ideas</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/SoC_2008_ideas"/>
				<updated>2008-03-06T04:40:07Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: added Lens Database and tCA Correction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
If you are a student willing to participate in The Google Summer of Code 2008, do as suggested below:&lt;br /&gt;
&lt;br /&gt;
* find out what ideas we have for SoC projects this year (read below);&lt;br /&gt;
* make up your mind, if you want to pick one of those tasks or if you have your own idea;&lt;br /&gt;
* join our community at [http://groups.google.com/group/hugin-ptx/ hugin-ptx];&lt;br /&gt;
* introduce yourself and tell us about your plans and wishes.&lt;br /&gt;
&lt;br /&gt;
= Development style =&lt;br /&gt;
&lt;br /&gt;
Most of the projects below are related to [[Hugin]], and some also relate to [[Panotools]] or [[tlalli]]. [[Hugin]] is mostly written in C++, and uses the [http://kogs-www.informatik.uni-hamburg.de/~koethe/vigra/ VIGRA image processing library] to support different types of images (for example, 8bit, 16bit and float (HDR) images). The core functionality is implemented in a platform independent C++ library, which is used by the GUI based on wxWidgets toolkit, and the command line programs ([[nona]], [[fulla]]). We also very much welcome contributions to [[Enblend]]/[[Enfuse]].&lt;br /&gt;
&lt;br /&gt;
The development of the projects should take place in a separate branch of the projects CVS (or SVN) repository. Communication with the mentors should usually happen through the appropriate development mailing list. All code should work on the major platforms supported (Linux, OSX, Windows).&lt;br /&gt;
&lt;br /&gt;
= Possible Projects =&lt;br /&gt;
&lt;br /&gt;
Some of the [[SoC2007 projects]] proposals were not done last year and are potential projects for this year.&lt;br /&gt;
&lt;br /&gt;
== munin — interactive openGL based GUI ==&lt;br /&gt;
&lt;br /&gt;
'''Possible Mentors''':&lt;br /&gt;
&lt;br /&gt;
* Pablo?&lt;br /&gt;
&lt;br /&gt;
'''Description''':&lt;br /&gt;
&lt;br /&gt;
Intuitive and interactive GUI, with priority in usability over available features and flexibility, based on what users should see — not on what software does internally.&lt;br /&gt;
&lt;br /&gt;
'''Skills''':&lt;br /&gt;
&lt;br /&gt;
* C++&lt;br /&gt;
* Qt4&lt;br /&gt;
* OpenGL&lt;br /&gt;
&lt;br /&gt;
'''Discussion''':&lt;br /&gt;
&lt;br /&gt;
how about relaxing the skills, and instead of fixing on Qt4 work on a combination of high level scripting language and widgets? Phythons + wxWidgets or Lua + wxWidgets come to my mind. Right now we have the option as both wxWidgets and Qt are in trunk, and if the student codes those widgets that require speed in OpenGL so that they integrate into such an API, any scripter can then leverage them for the fast and efficient design of GUI. [[User:Yuval|Yuval]] 12:50, 4 March 2008 (CET)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== enblend-enfuse zenith/nadir and more ==&lt;br /&gt;
&lt;br /&gt;
'''Primary Mentor'''&lt;br /&gt;
&lt;br /&gt;
Andrew Mihal&lt;br /&gt;
&lt;br /&gt;
'''Description'''&lt;br /&gt;
&lt;br /&gt;
* implementing blending of the zenith and nadir in Enblend and Enfuse&lt;br /&gt;
*:The best way I can think of to do this is to use a cubic projection and provide all cube faces to the tool simultaneously. All of the boundaries will be horizontal or vertical lines, which will fit in well with the SKIPSM-based pyramid algorithms currently in use. Enblend and Enfuse can share the same pyramid code.&lt;br /&gt;
* Enblend would additionally need a nearest feature transform algorithm that works on the cube surface for mask generation. I am not aware of a published algorithm to solve this.&lt;br /&gt;
* Improve the seam optimization algorithm in Enblend.&lt;br /&gt;
* GUI hooks: an API to a higher anstraction level language such as Python+wxWidgets or Lua+wxWidgets, with a real time interface into the enfuse functionality so that when changing weights with a sliders a preview can be generated in near real time. &lt;br /&gt;
* multi-step fusing and alternative, user controlled, weighting (sigma).&lt;br /&gt;
&lt;br /&gt;
'''Skills'''&lt;br /&gt;
&lt;br /&gt;
'''Admission Test'''&lt;br /&gt;
&lt;br /&gt;
A potential applicant for this project should first try to add boundary conditions to the localVarianceIf function in enfuse.h.&lt;br /&gt;
&lt;br /&gt;
== OpenGL accelerated hugin preview ==&lt;br /&gt;
&lt;br /&gt;
There is a nice proof of concept for this idea created as a [http://vision.eng.shu.ac.uk/mmvlwiki/index.php/Panorama_Viewer student project at Hallam University].&lt;br /&gt;
&lt;br /&gt;
== Ghost removal for enfuse ==&lt;br /&gt;
&lt;br /&gt;
Thanks to [[SoC2007 project Anti Ghosting]], hugin has ghost removal when merging [[Bracketing|bracketed]] series to [[HDR]], but this isn't currently available for [[enfuse]].&lt;br /&gt;
&lt;br /&gt;
== Masking in GUI ==&lt;br /&gt;
&lt;br /&gt;
Currently masking to remove unwanted objects from panoramas has to be added to alpha channels which is laborious, this could be integrated into the hugin GUI via a simple vector/polygon editor.  It would need to be simpler to use than the [http://hugin.sourceforge.net/tutorials/enblend-svg/ equivalent process with Inkscape]&lt;br /&gt;
&lt;br /&gt;
== Batch processing ==&lt;br /&gt;
&lt;br /&gt;
[[SoC2007 project Batch Processing]] was an unadopted project last year.&lt;br /&gt;
&lt;br /&gt;
Now that hugin has a Makefile based stitching process, it is much clearer what a batch stitcher would look like. This would need to support 'plug-in' Makefile add-ons for additional views, QTVR generation, uploading, sharpening etc... as well as a queue/spool manager.&lt;br /&gt;
&lt;br /&gt;
== Lens Database ==&lt;br /&gt;
&lt;br /&gt;
lens database of accumulated knowledge on distortion, CA, response curve.&lt;br /&gt;
The lens database aim : using stitching to feed an huge camera / lens database&lt;br /&gt;
for distortion correction, vignetting correction, ca, etc.&lt;br /&gt;
Then, it will be possible to reuse this database to correct single picture too.&lt;br /&gt;
&lt;br /&gt;
== tCA Correction ==&lt;br /&gt;
&lt;br /&gt;
An utility to determining the Transverse Chromatic Aberration (tCA) of an image so it can be corrected.&lt;br /&gt;
&lt;br /&gt;
'''Description'''&lt;br /&gt;
&lt;br /&gt;
CA is when the color channels in an image do not appear to line up well with each other. tCA is when colors are in focus but placed adjacent to each other.  tCA can be corrected with Panorama Tool's Radial Shift.&lt;br /&gt;
More info on [[Chromatic aberration]]&lt;br /&gt;
&lt;br /&gt;
Correcting tCA using PanoTools' Radial Shift, requires knowing the radial correction coefficients a, b and c for your lens.  PTOptimizer can be used to calculate the coefficients if known amounts of shift for each channel is known from the center to the corners of the image.&lt;br /&gt;
&lt;br /&gt;
This utility will produce these coefficients to be used in the lens database.&lt;br /&gt;
&lt;br /&gt;
Assume image is 180 deg diagonal filed of view. Regardless if it is rectangular or fisheye of any field of view.&lt;br /&gt;
Map image to the nadir of a sphere, taking into account any offset from center of image.&lt;br /&gt;
&lt;br /&gt;
The bottom of the remapped image is the center of the original.&lt;br /&gt;
Moving up the remapped image is the same as moving away from the center of the original image.&lt;br /&gt;
&lt;br /&gt;
Now we no longer have to deal with radial shift but vertical shift.&lt;br /&gt;
The image can be divided into a number of strips going across the entire width of the image.  Each strip represents a circle a different distance from the center.  The strips are shifted up and down the same amount over the entire image width. Each strip can have the channel data adjusted up and down to find the best match to eliminate CAt at that position.  One channel does not move while the other two are adjusted.  The best result of the two channels are recored for every strip.  Sub pixel accuracy can be achieved by increasing the height of the result when creating the remapped image.&lt;br /&gt;
&lt;br /&gt;
This can be done manually in real-time giving visual feedback of the channels alignment.  Or it can be done programmability doing a difference between the two channels and looking at the histogram.  The blackest result has the best alignment.  If accurate automated results are possible then there is no need for the manual method.&lt;br /&gt;
&lt;br /&gt;
Current methods of correcting [http://hugin.sourceforge.net/tutorials/tca/en.shtml tCA] are fairly complicated.&lt;br /&gt;
&lt;br /&gt;
[[Category:Community:Project]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/SoC_2008_application</id>
		<title>SoC 2008 application</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/SoC_2008_application"/>
				<updated>2008-03-05T05:53:56Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Added mentor details for Jim Watters&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Describe your organization ===&lt;br /&gt;
=== Why is your organization applying to participate in GSoC 2008? What do you hope to gain by participating? ===&lt;br /&gt;
&lt;br /&gt;
http://www.flickr.com/search/groups/?q=hugin&lt;br /&gt;
&lt;br /&gt;
http://www.flickr.com/photos/sbprzd/2126554118/&lt;br /&gt;
&lt;br /&gt;
http://www.flickr.com/photos/sbprzd/2125768589/&lt;br /&gt;
&lt;br /&gt;
=== Did your organization participate in past GSoCs? If so, please summarize your involvement and the successes and challenges of your participation. ===&lt;br /&gt;
=== If your organization has not previously participated in GSoC, have you applied in the past? If so, for what year(s)? ===&lt;br /&gt;
=== Who will your organization administrator be? Please include Google Account information. ===&lt;br /&gt;
=== What license(s) does your project use? ===&lt;br /&gt;
&lt;br /&gt;
Both hugin, enblend/enfuse, panotools and matchpoint use GPL v2 or above. &lt;br /&gt;
&lt;br /&gt;
=== What is the URL for your ideas page? ===&lt;br /&gt;
&lt;br /&gt;
http://wiki.panotools.org/SoC_2008_ideas&lt;br /&gt;
&lt;br /&gt;
=== What is the main development mailing list or forum for your organization? ===&lt;br /&gt;
&lt;br /&gt;
http://lists.sourceforge.net/lists/listinfo/panotools-devel&lt;br /&gt;
&lt;br /&gt;
=== What is the main IRC channel for your organization? ===&lt;br /&gt;
&lt;br /&gt;
We do not use IRC for communication. During GSoC 2007 we used Skype, but this is unlikely to happen again.&lt;br /&gt;
&lt;br /&gt;
=== Does your organization have an application template you would like to see students use? If so, please provide it now. ===&lt;br /&gt;
&lt;br /&gt;
=== Who will be your backup organization administrator? Please include Google Account information. ===&lt;br /&gt;
Yuval Levy is chosen to be backup admin. He did a perfect job as primary administrator during GSoC 2007.&lt;br /&gt;
&lt;br /&gt;
=== Who will your mentors be? Please include Google Account information. ===&lt;br /&gt;
&lt;br /&gt;
'''Pablo d'Angelo'''&lt;br /&gt;
&lt;br /&gt;
Pablo d'Angelo is the initiator and main developer of the hugin project. He has studied computer engineering at the University of applied sciences Ulm, and is currently working at the DaimlerChrysler Research Center in Ulm, where he does research on advanced 3D reconstruction techniques for industrial quality inspection. He is also working towards a PhD in the field of computer vision at the University of Bielefeld, which will likely be granted in Summer 2007.&lt;br /&gt;
&lt;br /&gt;
''' Andrew Mihal '''&lt;br /&gt;
&lt;br /&gt;
''' Jim Watters '''&lt;br /&gt;
&lt;br /&gt;
Jim Watters is a Software Engineer at JFL Peripheral Solution, in Ottawa, Ontario, Canada, where he designs software for scanners.  An avid user of PanoTools since 2000.  A growing contributer to the source code of PanoTools since Aug 2003 and a current maintainer of PanoTools (http://panotools.sourceforge.net).  Before receiving his degree in Computer Software in 1999, he received a diploma of Fine Art in Photography in 1990.  &lt;br /&gt;
&lt;br /&gt;
Most recently his attention has been directed to creating Immersive Panoramic Video. &lt;br /&gt;
&lt;br /&gt;
''' Daniel M German '''&lt;br /&gt;
&lt;br /&gt;
He is assistant professor at the Department of Computer Science at the University of Victoria, in British Columbia, in Canada. He received his PhD in Computer Science from the University of Waterloo in Canada.&lt;br /&gt;
&lt;br /&gt;
One of his areas of research is open source software development. He is interested in understanding how globally distributed individuals are able to work together to create commercial strength software. He has also explored the use of historical artifacts (such as version control logs, emails, defect tracking) to understand how a system has evolved and how this information can be used to continue its development.&lt;br /&gt;
&lt;br /&gt;
More recently he has been interested in the field of computational photography. More specifically on how to project extreme wide-angle images and spherical panoramas into acceptable flat representations.&lt;br /&gt;
&lt;br /&gt;
During the last year he has been the maintainer of Panotools (http://panotools.sourceforge.net).&lt;br /&gt;
&lt;br /&gt;
As a university professor one of his jobs is the supervision of students. He has graduated 6 Master's students, and currently supervising 3 Master's, and 1 Ph.D. Student. He has supervised more than a dozen honours projects of undergraduate students in computer science.&lt;br /&gt;
&lt;br /&gt;
He is an avid photographer. His works have been exhibited in several galleries. &lt;br /&gt;
&lt;br /&gt;
''' Alexandre Jenny '''&lt;br /&gt;
&lt;br /&gt;
=== What criteria did you use to select these individuals as mentors? Please be as specific as possible. ===&lt;br /&gt;
=== Steering Comittee ===&lt;br /&gt;
&lt;br /&gt;
This year we also have a steering comittee - a group of professianls in panorama making.&lt;br /&gt;
&lt;br /&gt;
'''Ken Turkowski'''&lt;br /&gt;
&lt;br /&gt;
'''Bruno Postle'''&lt;br /&gt;
&lt;br /&gt;
'''Thomas Rauscher'''&lt;br /&gt;
&lt;br /&gt;
'''G. Donald Bain'''&lt;br /&gt;
&lt;br /&gt;
G. Donald Bain manages the Geography Computing Facility at the University of California Berkeley, where he also teaches cartography and field studies. The rest of the time he devotes to VR.&lt;br /&gt;
&lt;br /&gt;
Hi is a board member of IVRPA.&lt;br /&gt;
&lt;br /&gt;
He travels and take panoramas for his web site: [http://virtualguidebooks.com/ Don Bain's Virtual Guidebooks]. This project (his wife refers to it as his obsession) has taken him from Tahiti to the Arctic, from the prehistoric ruins of the Southwest to the glaciers of the Canadian Rockies. As a compulsive educator it has been a real treat, documenting and sharing his landscapes with the world. He has taken over 4000 panoramas, with about 3500 currently on the site.&lt;br /&gt;
&lt;br /&gt;
He co-founded the World Wide Panorama, the largest international collaborative effort showcasing over 3000 panoramas from VR-artists all over the world taken over 11 editions. &lt;br /&gt;
&lt;br /&gt;
=== What is your plan for dealing with disappearing students? ===&lt;br /&gt;
=== What is your plan for dealing with disappearing mentors? ===&lt;br /&gt;
=== What steps will you take to encourage students to interact with your project's community before, during and after the program? ===&lt;br /&gt;
=== What will you do to ensure that your accepted students stick with the project after GSoC concludes? ===&lt;br /&gt;
&lt;br /&gt;
[[Category:Community:Project]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/PTStitcher</id>
		<title>PTStitcher</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/PTStitcher"/>
				<updated>2007-09-24T14:18:28Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Added Example script copied from my web site.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Preface ==&lt;br /&gt;
PTStitcher is one of the core applications of [[Panorama tools]], together with [[PTOptimizer]] and the [[Panorama Tools Plugins]]. &lt;br /&gt;
&lt;br /&gt;
For stitching panoramas you most probably won't get in contact with PTStitcher frequently, since the scripting is more or less completely done by the various [[GUI front-ends]] and some tools like [[PanoCube]].&lt;br /&gt;
&lt;br /&gt;
However, there are several occasions where you might need to write or at least understand the scripts or call PTStitcher directly (for some batch tasks f.e.).&lt;br /&gt;
&lt;br /&gt;
== Updates ==&lt;br /&gt;
The PTStitcher source code was never published, hence there are no changes possible to certain functions. But since a considerable part of it's functionality is in [[pano12]] library, PTStitcher benefits from every update of this core library. &lt;br /&gt;
&lt;br /&gt;
You can take PTStitcher from any of the panotools distribution on one of the [[Mirrors]]. In order to use new functionality you need a recent copy of [[pano12]] library.  Note that only ''win32'', ''i386 Linux'' and ''mac classic'' binary versions were ever made available, so you are out of luck if you use ''OS X'' or a 64bit operating system.&lt;br /&gt;
&lt;br /&gt;
There is an open source replacement for PTStitcher called [[nona]] in the [[hugin]] project which has much (but not all) of the PTStitcher features.  Another open source replacement is [[PTmender]], part of the [[pano12]] project at sourceforge.&lt;br /&gt;
&lt;br /&gt;
== Intro ==&lt;br /&gt;
PTStitcher is script driven. The scripts are in pure text format and can be edited with any text or programming editor (on windows notepad will do). &lt;br /&gt;
&lt;br /&gt;
They are processed on a line by line basis. Each line starts with a special character (case sensitive) that indicates the meaning of the rest of the line. All other first in line characters are ignored and considered comments.&lt;br /&gt;
&lt;br /&gt;
== Features ==&lt;br /&gt;
Most features of PTStitcher are conveniently accessible by the usual GUIs ([[#Preface|see top]]), but some are not.&lt;br /&gt;
&lt;br /&gt;
=== Accessible by GUI ===&lt;br /&gt;
PTStitcher can stitch&lt;br /&gt;
* [[Equirectangular Projection|spherical (equirectangular)]], [[Cylindrical Projection|cylindrical]], [[Rectilinear Projection|rectilinear]] and [[Fisheye Projection|fisheyed (or mirror ball)]] panoramas&lt;br /&gt;
* multi row panoramas&lt;br /&gt;
* panoramas from images that where shot tilted up or down.&lt;br /&gt;
* images from any lens (including spherical mirrors) &lt;br /&gt;
* images with different [[Focal Length]] into one panorama&lt;br /&gt;
* [[How to stitch flat images|flat images]] like scanned maps.&lt;br /&gt;
&lt;br /&gt;
The capabilities of PTStitcher go far beyond panorama stitching: It can be used &lt;br /&gt;
* to remap images between different [[Projections]]&lt;br /&gt;
* to [[Extracting and inserting rectilinear Views|extract and insert rectilinear images]] from a spherical or cylindrical panorama.&lt;br /&gt;
* to [[Edit zenith and nadir in one go with PTGui|remap a spherical panorama]] such that [[Nadir]] and [[Zenith]] are editable.&lt;br /&gt;
* to down- or [[Upsampling a single image with ptstitcher|upsample images]] with high quality interpolators.&lt;br /&gt;
* to [[Perspective correction|correct perspective distortion]].&lt;br /&gt;
&lt;br /&gt;
=== Acessible by Script or other Tool ===&lt;br /&gt;
PTStitcher can be used stand alone or with some other (non-GUI) Tool:&lt;br /&gt;
* together with some tool that separate color channels ([[ImageMagick]]) to correct [[Chromatic aberration]]&lt;br /&gt;
* assembling 6 cube faces to an equirectangular panorama can be done by GUI but is more conveniently done by script, [http://www.pinlady.net/vr/#anchor3 batch file] or [[PanoCube|PanoCube Plus]].&lt;br /&gt;
&lt;br /&gt;
== Example Script ==&lt;br /&gt;
The updated original example script with lots of comments is below. Copied from [http://photocreations.ca/panotools/stitch.txt Jim Watters' page]&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#############           Example Script                  ##########################&lt;br /&gt;
#                       to run PTStitcher&lt;br /&gt;
#&lt;br /&gt;
#&lt;br /&gt;
# Only lines starting with 'p','o', i', or 'm' are read, &lt;br /&gt;
# so you can add comments and info as you like by using &lt;br /&gt;
# other line starting characters.  &lt;br /&gt;
# The * character at the first of a line indicated the end of the script file.&lt;br /&gt;
&lt;br /&gt;
# The stitcher script must contain:&lt;br /&gt;
# one 'p'- line describing the output image (eg Panorama)&lt;br /&gt;
# one 'o'-line for each input image&lt;br /&gt;
# one 'i' line for each input image that is optional&lt;br /&gt;
# the 'm'-line is optional and allows you to specify modes for the optimization.&lt;br /&gt;
# the 'C'-line is optional and allows morphing of control points.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# 'p'-line options&lt;br /&gt;
# w1000        width in pixels&lt;br /&gt;
# h600         height in pixels (default: width/2)&lt;br /&gt;
# f0           projection format,&lt;br /&gt;
#                  0 - rectilinear (for printing and viewing)&lt;br /&gt;
#                  1 - Cylindrical (for Printing and QTVR)&lt;br /&gt;
#                  2 - Equirectangular ( for Spherical panos), default&lt;br /&gt;
#                  3 - full-frame fisheye&lt;br /&gt;
# v360         horizontal field of view of panorama (default 360)&lt;br /&gt;
# nPICT        Panorama file format, one of:&lt;br /&gt;
#                  PICT          pict-file on macs, bmp-file on win (default)&lt;br /&gt;
#                  PSD           single layer Photoshop file, 48bits supported&lt;br /&gt;
#                  PNG           png-format, 48bits supported&lt;br /&gt;
#                  TIFF          tiff-format, 48bits supported&lt;br /&gt;
#                  PSD_mask      Photoshop file, one image per layer&lt;br /&gt;
#                                  + shape mask &amp;amp; feathered clip mask at overlap center&lt;br /&gt;
#                  PSD_nomask    Photoshop file, one image per layer,&lt;br /&gt;
#                  TIFF_mask     tiff-format, multi-file, one image per file, 48bit supported&lt;br /&gt;
#                                  alpha layer with feathered clip mask at overlap center&lt;br /&gt;
#                  TIFF_m        tiff-format, multi-file, one image per file, 48bit supported&lt;br /&gt;
#                                  alpha layer with non-feathered clip mask at image border&lt;br /&gt;
#                                  + shape mask &amp;amp; non-feathered clip mask at image border&lt;br /&gt;
#                  JPEG          Panoramic image in jpeg-format. Use with f1&lt;br /&gt;
#                                  for IBM Hotmedia panoramas.&lt;br /&gt;
#                  PAN           SmoothMove movie. Use only with f2.&lt;br /&gt;
#                  IVR           LivePicture IVR movie&lt;br /&gt;
#                                  cylindrical (format f1) or spherical (format f2)&lt;br /&gt;
#                  IVR_java      LivePicture Java Panorama,&lt;br /&gt;
#                                  cylindrical (format f1) or spherical (format f2)&lt;br /&gt;
#                  VRML          VRML background node, use only with f2 for panoramas, or&lt;br /&gt;
#                                  VRML-object for PTStereo&lt;br /&gt;
#                  QTVR          Apple QTVR-panomovie. Use only with f1&lt;br /&gt;
#                  3DMF          3DMF-object (PTStereo).&lt;br /&gt;
#&lt;br /&gt;
# n&amp;quot;QTVR w400 h300 c1&amp;quot;           additional viewer options in a quoted string together with format&lt;br /&gt;
#              the following options are recognized:&lt;br /&gt;
#                  w(width) and h(height) of viewer window (only QTVR on Macs)&lt;br /&gt;
#                  c(codec: 0-JPEG, 1-Cinepak, 2-Sorenson) (only QTVR on Macs)&lt;br /&gt;
#                  q(codec quality):&lt;br /&gt;
#                     0-high,1-normal,2-low    QTVR on Macs&lt;br /&gt;
#                     0-100(highest)           on other jpeg-formats (PAN, IVR, IVR_java, VRML)&lt;br /&gt;
#                  g  progressive jpeg (0-no, 1-yes) (PAN, IVR, IVR_java, VRML)&lt;br /&gt;
#                     Optimized JPEG (0-on(default), 2-disabled), (3-progressive with optimized disabled)&lt;br /&gt;
#                  p  initial pan angle ( QTVR on Macs, VRML, IVR)&lt;br /&gt;
#                  v  field of view (QTVR, VRML, IVR)&lt;br /&gt;
#                  Many more options can be set by editing the viewer scripts&lt;br /&gt;
# u10          width of feather for stitching all images. default:10&lt;br /&gt;
# k1           attempt color &amp;amp; brightness correction using image number as anchor&lt;br /&gt;
# b1           attempt brightness correction with no color change using image number as anchor&lt;br /&gt;
# d1           attempt color correction with no brightness change using image number as anchor&lt;br /&gt;
#                  Do not use more than one of k, d, b.This is new method of correcting&lt;br /&gt;
&lt;br /&gt;
p w800 nPSD_mask&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# The 'i' lines describe input images and is optional&lt;br /&gt;
# nName        file name of the input image.&lt;br /&gt;
#                  over ridable with command line parameters to PTStitcher&lt;br /&gt;
&lt;br /&gt;
i n&amp;quot;photo1.jpg&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# The 'o' lines describe input images. One line per image is required&lt;br /&gt;
# The width and height of the image is obtained from image&lt;br /&gt;
# f0           projection format,&lt;br /&gt;
#                  0 - rectilinear (normal lenses)&lt;br /&gt;
#                  1 - Panoramic (Scanning cameras like Noblex)&lt;br /&gt;
#                  2 - Circular fisheye&lt;br /&gt;
#                  3 - full-frame fisheye&lt;br /&gt;
#                  4 - PSphere, equirectangular&lt;br /&gt;
# v82          horizontal field of view of image (required)&lt;br /&gt;
# y0           yaw angle (required)&lt;br /&gt;
# p43          pitch angle (required)&lt;br /&gt;
# r0           roll angle (required)&lt;br /&gt;
# a,b,c        lens correction coefficients (optional)&lt;br /&gt;
#                  (see http://www.fh-furtwangen.de/~dersch/barrel/barrel.html)&lt;br /&gt;
# d,e          initial lens offset in pixels(defaults d0 e0, optional).&lt;br /&gt;
#                  Used to correct for offset from center of image&lt;br /&gt;
#                  d - horizontal offset,&lt;br /&gt;
#                  e - vertical offset&lt;br /&gt;
# g,t          initial lens shear.  Use to remove slight misalignment&lt;br /&gt;
#                  of the line scanner relative to the film transport&lt;br /&gt;
#                  g - horizontal shear&lt;br /&gt;
#                  t - vertical shear&lt;br /&gt;
# +buf         (obsolete, -buf and +buf are now ignored when stitching)&lt;br /&gt;
#                  load and merge image with buffer&lt;br /&gt;
# -buf         (obsolete, -buf and +buf are now ignored when stitching)&lt;br /&gt;
#                  save result to buffer. The first 'o' line should&lt;br /&gt;
#                  contain one '-buf' command, the last line one '+buf'&lt;br /&gt;
#                  command, and all other lines both '+buf -buf'&lt;br /&gt;
#                  Exception: remove all 'buf' commands when&lt;br /&gt;
#                  creating Photoshop-files to preserve the original images.&lt;br /&gt;
# u10          (obsolete, globally used on p line) width of feather for stitching. default:10&lt;br /&gt;
# S100,600,100,800   Selection(l,r,t,b), Only pixels inside the rectangle will be used for conversion.&lt;br /&gt;
#                       Original image size is used for all image parameters&lt;br /&gt;
#                       (e.g. field-of-view) refer to the original image.&lt;br /&gt;
#                       Selection can be outside image dimension.&lt;br /&gt;
# C100,600,100,800   Crop(l,r,t,b), Only pixels inside the rectangle will be used for conversion.&lt;br /&gt;
#                       Cropped image size is used for all image parameters&lt;br /&gt;
#                       (e.g. field-of-view) refer to the cropped part of the image.&lt;br /&gt;
# m20          (obsolete, use S &amp;amp; C) ignore a frame 20 pixels wide. default: 0&lt;br /&gt;
# mx100        (obsolete, use S &amp;amp; C) crop to brightest rectangle with size 100x200;&lt;br /&gt;
# my200        (obsolete, use S &amp;amp; C) used only for circular fisheye images (f2)&lt;br /&gt;
# s0           (obsolete, ignored, always blend) specify placement of seam between buffer and image:&lt;br /&gt;
#                  0-middle of overlap('blend' ,default)&lt;br /&gt;
#                  1- at edge of image ('paste').&lt;br /&gt;
# o            (the small letter). Morph-to-fit using control points.&lt;br /&gt;
# k0           (obsolete, use p line correction still used with plugin)&lt;br /&gt;
#                  attempt color/brightness correction when merging image and buffer, one of:&lt;br /&gt;
#                  0 - no correction(default);&lt;br /&gt;
#                  1 - change image;&lt;br /&gt;
#                  2 - change buffer;&lt;br /&gt;
#                  3 - change both&lt;br /&gt;
#                  this feature does not work very well!&lt;br /&gt;
&lt;br /&gt;
o f2 r0   p0    y0     v183    a0 b-0.1 c0  S100,600,100,800&lt;br /&gt;
o f2 r0   p0    y180   v183    a0 b-0.1 c0  S100,600,100,800&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# 'm'-line options&lt;br /&gt;
# ----------------&lt;br /&gt;
# Set mode for stitcher, not required&lt;br /&gt;
#&lt;br /&gt;
# g2.5         Set gamma value for internal computations (default 1.0)&lt;br /&gt;
#                  See &amp;lt;http://www.fh-furtwangen.de/~dersch/gamma/gamma.html&amp;gt;&lt;br /&gt;
# i2           Set interpolator, See &amp;lt;http://www.fh-furtwangen.de/~dersch/interpolator/interpolator.html&amp;gt;&lt;br /&gt;
#                one of:&lt;br /&gt;
#                   0 - poly3 (default)&lt;br /&gt;
#                   1 - spline16,&lt;br /&gt;
#                   2 - spline36,&lt;br /&gt;
#                   3 - sinc256,&lt;br /&gt;
#                   4 - spline64,&lt;br /&gt;
#                   5 - bilinear,&lt;br /&gt;
#                   6 - nearest neighbor,&lt;br /&gt;
#                   7 - sinc1024&lt;br /&gt;
#              \/ antialiasing filters \/ See &amp;lt;http://www.pano2qtvr.com/dll_patch/&amp;gt;&lt;br /&gt;
#                   8 - Box&lt;br /&gt;
#                   9 - Bartlett/Triangle&lt;br /&gt;
#                   10 - Hermite&lt;br /&gt;
#                   11 - Hanning&lt;br /&gt;
#                   12 - Hamming&lt;br /&gt;
#                   13 - Blackmann&lt;br /&gt;
#                   14 - Gaussian 1/sqrt(2)&lt;br /&gt;
#                   15 - Gaussian 1/2&lt;br /&gt;
#                   16 - Quadardic&lt;br /&gt;
#                   17 - Cubic&lt;br /&gt;
#                   18 - Catmull-Rom&lt;br /&gt;
#                   19 - Mitchell&lt;br /&gt;
#                   20 - Lanczos2&lt;br /&gt;
#                   21 - Lanczos3&lt;br /&gt;
#                   22 - Blackman/Bessel&lt;br /&gt;
#                   23 - Blackman/sinc&lt;br /&gt;
#                   &lt;br /&gt;
# f0		   Invoke Faster Transformation also invoked by creating a file named &amp;quot;pano12_opt.txt&amp;quot; &lt;br /&gt;
#                   in the same foler as project with a line FAST_TRANSFORM&lt;br /&gt;
&lt;br /&gt;
m g1.5 i6 f0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# 'z'-lines options&lt;br /&gt;
# ----------------&lt;br /&gt;
# Extended Depth-Of-Field, not required&lt;br /&gt;
#&lt;br /&gt;
# Automatically determine, for every point in a picture, which of mumerous overlapping &lt;br /&gt;
# images has best focus.  Masks are generated to reveale the best focused parts of &lt;br /&gt;
# each image.  Feathering must be selected.  Used with PSD_mask or TIFF_mask file format&lt;br /&gt;
# to edit the mask or with flattened file formats for flattened final result.   Does not&lt;br /&gt;
# work if color and/or brightness correction are invoked.&lt;br /&gt;
#&lt;br /&gt;
# m2           mask type&lt;br /&gt;
#                m0 hard-edged masks, mutually exclusive&lt;br /&gt;
#                m1 hard-edged masks, stack of nested masks&lt;br /&gt;
#                m2 blended masks, stack of nested masks (default &amp;amp; strongly recommended)&lt;br /&gt;
#                   (this option includes a smoothing computation that seems to help a lot.)&lt;br /&gt;
# fN           focus estimation window size, N = halfwidth of window.&lt;br /&gt;
#                Recommended value is 0.5% of image width, e.g. 4 pixels for an 800-pixel image.&lt;br /&gt;
#                Computation cost for focus estimation increases proportional to N^2.  Default f4.&lt;br /&gt;
# sN           smoothing window size, N = halfwidth of window.&lt;br /&gt;
#                 Recommended value is 0.5% of image width, e.g. 4 pixels for an 800-pixel image.&lt;br /&gt;
#                 Computation cost for smoothing increases proportional to N^2.  Default s4.&lt;br /&gt;
&lt;br /&gt;
z m2 f4 s4&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# 'C' lines&lt;br /&gt;
# ----------------&lt;br /&gt;
# Morphing of control point lines&lt;br /&gt;
# One line per point&lt;br /&gt;
# Created automatically by optimizer&lt;br /&gt;
#&lt;br /&gt;
# i0           image&lt;br /&gt;
# x363.726     starting x point position&lt;br /&gt;
# y125.738     starting y point position&lt;br /&gt;
# X363.838     morphed x point position&lt;br /&gt;
# Y125.618     morphed y point position&lt;br /&gt;
&lt;br /&gt;
C i0  x363.726 y125.738 X363.838 Y125.618&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
Every thing after * is ignored.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Tutorials ==&lt;br /&gt;
Information on how to create and use PTStitcher scripts can be found on the web and on the wiki:&lt;br /&gt;
* The original [[PTStitcher Readme]] file contains basic information.&lt;br /&gt;
* The updated original example script with lots of comments is found at [http://photocreations.ca/panotools/stitch.txt Jim Watters' page]&lt;br /&gt;
* [http://www.path.unimelb.edu.au/~bernardk/tutorials/360/readme/index.html Ben Kreunen] has an excellent list about the parameters of the p- o- and m-line and some example scripts.&lt;br /&gt;
* Frequently asked questions about PTStitcher including solutions to common problems are found at the unofficial [http://ptfaq.org/cgi-bin/fom?_recurse=1&amp;amp;file=10 Panorama Tools FAQ].&lt;br /&gt;
* On the wiki there are some techniques described that use PTStitcher:&lt;br /&gt;
** [[Upsampling a single image with ptstitcher]]&lt;br /&gt;
** [[Extracting and inserting rectilinear Views]]&lt;br /&gt;
&lt;br /&gt;
== Calling from the command line ==&lt;br /&gt;
PTStitcher can be called from the command line (this is what all GUIs do, too). More information in the [[PTStitcher Readme#Scripting_PTStitcher|PTStitcher Readme]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;[[User:Erik Krause|Erik Krause]] 12:35, 29 Apr 2005 (EDT)&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;br /&gt;
[[Category:Glossary]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/PTOptimizer</id>
		<title>PTOptimizer</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/PTOptimizer"/>
				<updated>2007-09-24T14:12:28Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Add PTOptimizer script copied from my web site.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''PTOptimizer''' was originally created by [[Helmut Dersch]] as part of [[Panorama Tools]], it is a simple wrapper program around [[control points|control point]] optimization routines present in the [[pano12]] library.&lt;br /&gt;
&lt;br /&gt;
Source code for the original '''PTOptimizer''' was never released, however reconstruction was quite straightforward and a multi-platform version is now included with the [[pano12]] library available at [http://panotools.sf.net/ Sourceforge].&lt;br /&gt;
&lt;br /&gt;
The updated original example script with lots of comments is below.  Copied from [http://photocreations.ca/panotools/Optimize.txt Jim Watters' page].&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#############           Example Script                  ##########################&lt;br /&gt;
#                       to run PTOptimizer&lt;br /&gt;
#&lt;br /&gt;
#&lt;br /&gt;
# Only lines starting with 'p', 'v', 'i', or 'm' are read.&lt;br /&gt;
# So you can add comments and info as you like by using &lt;br /&gt;
# other line starting characters.  &lt;br /&gt;
# Do not start a line with !, it is used by adjust plugin and scripts.&lt;br /&gt;
# the * character indicated the end of the script file.&lt;br /&gt;
&lt;br /&gt;
# The script must contain:&lt;br /&gt;
# one 'p'- line describing the output image (eg Panorama)&lt;br /&gt;
# one 'i'-line for each input image&lt;br /&gt;
# one or several 'v'- lines listing the variables to be optimized.&lt;br /&gt;
# the 'm'-line is optional and allows you to specify modes for the optimization.&lt;br /&gt;
# one 'c'-line for each pair of control points&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# 'p'-line options&lt;br /&gt;
# w1000        width in pixels&lt;br /&gt;
# h600         height in pixels (default: width/2)&lt;br /&gt;
# f0            projection format,&lt;br /&gt;
#                  0 - rectilinear (for printing and viewing)&lt;br /&gt;
#                  1 - Cylindrical (for Printing and QTVR)&lt;br /&gt;
#                  2 - Equirectangular ( for Spherical panos), default&lt;br /&gt;
#                  3 - full-frame fisheye&lt;br /&gt;
# v360         horizontal field of view of panorama (default 360)&lt;br /&gt;
# nPICT        Panorama file format, one of:&lt;br /&gt;
#                  PICT          pict-file on macs, bmp-file on win (default)&lt;br /&gt;
#                  PSD           single layer Photoshop file, 48bits supported&lt;br /&gt;
#                  PNG           png-format, 48bits supported&lt;br /&gt;
#                  TIFF          tiff-format, 48bits supported&lt;br /&gt;
#                  PSD_mask      Photoshop file, one image per layer&lt;br /&gt;
#                                  + shape mask &amp;amp; feathered clip mask at overlap center&lt;br /&gt;
#                  PSD_nomask    Photoshop file, one image per layer,&lt;br /&gt;
#                  TIFF_mask     tiff-format, multi-file, one image per file, 48bit supported&lt;br /&gt;
#                                  alpha layer with feathered clip mask at overlap center&lt;br /&gt;
#                  TIFF_m        tiff-format, multi-file, one image per file, 48bit supported&lt;br /&gt;
#                                  alpha layer with non-feathered clip mask at image border&lt;br /&gt;
#                                  + shape mask &amp;amp; non-feathered clip mask at image border&lt;br /&gt;
#                  JPEG          Panoramic image in jpeg-format. Use with f1&lt;br /&gt;
#                                  for IBM Hotmedia panoramas.&lt;br /&gt;
#                  PAN           SmoothMove movie. Use only with f2.&lt;br /&gt;
#                  IVR           LivePicture IVR movie&lt;br /&gt;
#                                  cylindrical (format f1) or spherical (format f2)&lt;br /&gt;
#                  IVR_java      LivePicture Java Panorama,&lt;br /&gt;
#                                  cylindrical (format f1) or spherical (format f2)&lt;br /&gt;
#                  VRML          VRML background node, use only with f2 for panoramas, or&lt;br /&gt;
#                                  VRML-object for PTStereo&lt;br /&gt;
#                  QTVR          Apple QTVR-panomovie. Use only with f1&lt;br /&gt;
#                  3DMF          3DMF-object (PTStereo).&lt;br /&gt;
# n&amp;quot;QTVR w400 h300 c1&amp;quot;           additional viewer options in a quoted string together with format&lt;br /&gt;
#              the following options are recognized:&lt;br /&gt;
#                  w(width) and h(height) of viewer window (only QTVR on Macs)&lt;br /&gt;
#                  c(codec: 0-JPEG, 1-Cinepak, 2-Sorenson) (only QTVR on Macs)&lt;br /&gt;
#                  q(codec quality):&lt;br /&gt;
#                     0-high,1-normal,2-low    QTVR on Macs&lt;br /&gt;
#                     0-100(highest)           on other jpeg-formats (PAN, IVR, IVR_java, VRML)&lt;br /&gt;
#                  g  progressive jpeg (0-no, 1-yes) (PAN, IVR, IVR_java, VRML)&lt;br /&gt;
#                     Optimized JPEG (0-on(default), 2-disabled), (3-progressive with optimized disabled)&lt;br /&gt;
#                  p  initial pan angle ( QTVR on Macs, VRML, IVR)&lt;br /&gt;
#                  v  field of view (QTVR, VRML, IVR)&lt;br /&gt;
#                  Many more options can be set by editing the viewer scripts&lt;br /&gt;
# -buf         suppress buffer commands in the stitcher script generated by PTOptimizer.&lt;br /&gt;
#                  (buffer commands are now obsolete, -buf and +buf on i lines are now&lt;br /&gt;
#                  ignored when stitching) This option should be set if you wish&lt;br /&gt;
#                  to edit the final panoramic image, eg for the two PSD formats.&lt;br /&gt;
# a0.0 b1.0 c0.04  Options to create multiple images in PTInterpolate and PTMorpher.&lt;br /&gt;
#                      a denotes starting value,&lt;br /&gt;
#                      b end value&lt;br /&gt;
#                      c increment. 0 is left, 1 is right image.&lt;br /&gt;
#                      The above command interpolates/morphs two images and&lt;br /&gt;
#                      creates 25 intermediate frames.&lt;br /&gt;
# u10          width of feather for stitching all images. default:10&lt;br /&gt;
# k1           attempt color &amp;amp; brightness correction using image number as anchor&lt;br /&gt;
# b1           attempt brightness correction with no color change using image number as anchor&lt;br /&gt;
# d1           attempt color correction with no brightness change using image number as anchor&lt;br /&gt;
#                  Do not use more than one of k, d, b.This is new method of correcting&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
p w800 nPSD_mask -buf&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# The 'i' lines describe input images. One line per image is required&lt;br /&gt;
# unneeded paramiters for optimizing but needed for stitching can be &lt;br /&gt;
# set here and the optimizer will automaticaly add them to the o lines&lt;br /&gt;
# ----------------&lt;br /&gt;
# f0           projection format,&lt;br /&gt;
#                               0 - rectilinear (normal lenses)&lt;br /&gt;
#                               1 - Panoramic (Scanning cameras like Noblex)&lt;br /&gt;
#                               2 - Circular fisheye&lt;br /&gt;
#                               3 - full-frame fisheye&lt;br /&gt;
#                               4 - PSphere (equirectangular)&lt;br /&gt;
#                               8 - Orthographic. This is only allowed in PTStereo and&lt;br /&gt;
#                                      for the first image. This indicates a map or ground plan.&lt;br /&gt;
# w600         width in pixels&lt;br /&gt;
# h1000        height in pixels&lt;br /&gt;
# v82          horizontal field of view of image (required, but ignored for f8)&lt;br /&gt;
# y0           initial yaw angle (required)&lt;br /&gt;
# p43          initial pitch angle (required)&lt;br /&gt;
# r0           initial roll angle (required)&lt;br /&gt;
# a,b,c        initial lens correction coefficients (defaults a0 b0 c0, optional)&lt;br /&gt;
#                  (see http://www.fh-furtwangen.de/~dersch/barrel/barrel.html)&lt;br /&gt;
# d,e          initial lens offset in pixels(defaults d0 e0, optional).&lt;br /&gt;
#                  Used to correct for offset from center of image&lt;br /&gt;
#                  d - horizontal offset,&lt;br /&gt;
#                  e - vertical offset&lt;br /&gt;
# g,t          initial lens shear.  Use to remove slight misalignment&lt;br /&gt;
#                  of the line scanner relative to the film transport&lt;br /&gt;
#                  g - horizontal shear&lt;br /&gt;
#                  t - vertical shear&lt;br /&gt;
# u10          (obsolete, globally used on p line) specify width of feather for stitching. default:10&lt;br /&gt;
# S100,600,100,800   Selection(l,r,t,b), Only pixels inside the rectangle will be used for conversion.&lt;br /&gt;
#                       Original image size is used for all image parameters&lt;br /&gt;
#                       (e.g. field-of-view) refer to the original image.&lt;br /&gt;
# C100,600,100,800   Crop(l,r,t,b), Only pixels inside the rectangle will be used for conversion.&lt;br /&gt;
#                       Cropped image size is used for all image parameters&lt;br /&gt;
#                       (e.g. field-of-view) refer to the cropped part of the image.&lt;br /&gt;
# m20          (obsolete, use S &amp;amp; C) ignore a frame 20 pixels wide. default: 0&lt;br /&gt;
# mx100        (obsolete, use S &amp;amp; C) crop to brightest rectangle with size 100x200;&lt;br /&gt;
# my200        (obsolete, use S &amp;amp; C) used only for circular fisheye images (f2)&lt;br /&gt;
# s0           (obsolete, ignored, always blend) specify placement of seam between buffer and image:&lt;br /&gt;
#                   0-middle of overlap('blend' ,default)&lt;br /&gt;
#                   1- at edge of image ('paste').&lt;br /&gt;
# o            (the small letter). Morph-to-fit using control points.&lt;br /&gt;
# k0           (obsolete, use p line correction still used with plugin)&lt;br /&gt;
#                  attempt color/brightness correction when merging image and buffer, one of:&lt;br /&gt;
#                  0 - no correction(default);&lt;br /&gt;
#                  1 - change image;&lt;br /&gt;
#                  2 - change buffer;&lt;br /&gt;
#                  3 - change both&lt;br /&gt;
#                  this feature does not work very well!&lt;br /&gt;
# X10          World coordinates of camera position, only used for PTStereo&lt;br /&gt;
# Y200         If the camera is aligned (yaw = pitch = roll = 0.0),&lt;br /&gt;
# Z-13.5       X is coordinate to the right, Y vertically up and&lt;br /&gt;
#              -Z is forward viewing direction.&lt;br /&gt;
# nName        Name of image (ignored by PTOptimizer used in PTStitcher)&lt;br /&gt;
#&lt;br /&gt;
#      Parameters in different images can be linked using '='&lt;br /&gt;
#      followed by the image number starting with 0.&lt;br /&gt;
#      Example 'v=0' sets horizontal field of view as in&lt;br /&gt;
#      image number 0. This feature works for the variables&lt;br /&gt;
#      v, a, b, c, (r, p, y with caution) d, e, g, and t&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
i f2 r0      p0    y0     v183    a0 b-0.1 c0  mx400 my400 &lt;br /&gt;
i f2 r-0.5   p1    y182   v=0     a0 b-0.1 c0  mx400 my400 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# 'v'-line options:&lt;br /&gt;
# -----------------&lt;br /&gt;
# Please note: the 'v'-line must come after the the 'i'-lines.&lt;br /&gt;
# Optimization variables are listed together with the image number&lt;br /&gt;
# starting at 0. There can be several v-lines.&lt;br /&gt;
#&lt;br /&gt;
# y0           Optimize yaw in image 0&lt;br /&gt;
# p1           Optimize pitch in image 1&lt;br /&gt;
# r2           Optimize roll in image 2&lt;br /&gt;
# v0           Optimize field of view in image 0&lt;br /&gt;
# a2           Optimize lens correction parameter 'a' in image 2&lt;br /&gt;
#                  b and c can be equally optimized.&lt;br /&gt;
# X1           Optimize x-coordinate of image 1, only for PTStereo&lt;br /&gt;
# Y2           Optimize y-coordinate of image 2, only for PTStereo&lt;br /&gt;
# Z6           Optimize z-coordinate of image 6, only for PTStereo&lt;br /&gt;
#&lt;br /&gt;
#      If a image has a parameter linked to another image only&lt;br /&gt;
#      need to optimize the master.&lt;br /&gt;
&lt;br /&gt;
v v0 r0 p0 r1 p1 y1&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# 'm'-line options&lt;br /&gt;
# ----------------&lt;br /&gt;
# Set mode for stitcher, not required&lt;br /&gt;
#&lt;br /&gt;
# g2.5         Set gamma value for internal computations (default 1.0)&lt;br /&gt;
#                  See &amp;lt;http://www.fh-furtwangen.de/~dersch/gamma/gamma.html&amp;gt;&lt;br /&gt;
# i2           Set interpolator, See &amp;lt;http://www.fh-furtwangen.de/~dersch/interpolator/interpolator.html&amp;gt;&lt;br /&gt;
#                one of:&lt;br /&gt;
#                   0 - poly3 (default)&lt;br /&gt;
#                   1 - spline16,&lt;br /&gt;
#                   2 - spline36,&lt;br /&gt;
#                   3 - sinc256,&lt;br /&gt;
#                   4 - spline64,&lt;br /&gt;
#                   5 - bilinear,&lt;br /&gt;
#                   6 - nearest neighbor,&lt;br /&gt;
#                   7 - sinc1024&lt;br /&gt;
#              \/ antialiasing filters \/ See &amp;lt;http://www.pano2qtvr.com/dll_patch/&amp;gt;&lt;br /&gt;
#                   8 - Box&lt;br /&gt;
#                   9 - Bartlett/Triangle&lt;br /&gt;
#                   10 - Hermite&lt;br /&gt;
#                   11 - Hanning&lt;br /&gt;
#                   12 - Hamming&lt;br /&gt;
#                   13 - Blackmann&lt;br /&gt;
#                   14 - Gaussian 1/sqrt(2)&lt;br /&gt;
#                   15 - Gaussian 1/2&lt;br /&gt;
#                   16 - Quadardic&lt;br /&gt;
#                   17 - Cubic&lt;br /&gt;
#                   18 - Catmull-Rom&lt;br /&gt;
#                   19 - Mitchell&lt;br /&gt;
#                   20 - Lanczos2&lt;br /&gt;
#                   21 - Lanczos3&lt;br /&gt;
#                   22 - Blackman/Bessel&lt;br /&gt;
#                   23 - Blackman/sinc&lt;br /&gt;
#&lt;br /&gt;
# p0           Create panorama after optimizing control points&lt;br /&gt;
#                  0 no(default), 1 yes&lt;br /&gt;
&lt;br /&gt;
m g1.5 i6&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# 'c' lines&lt;br /&gt;
# ----------------&lt;br /&gt;
# Control point lines&lt;br /&gt;
# One line per point pair&lt;br /&gt;
# about one pair of points per image per variable being optimized.&lt;br /&gt;
# The more variables being optimized the more control points needed.&lt;br /&gt;
#&lt;br /&gt;
# n0           first image&lt;br /&gt;
# N1           second image&lt;br /&gt;
# x1066.5       first image x point position&lt;br /&gt;
# y844.333      first image y point position&lt;br /&gt;
# X239.52       second image x point position&lt;br /&gt;
# Y804.64       second image y point position&lt;br /&gt;
# t0           type of control point (optional)&lt;br /&gt;
#                  0 - normal (default)&lt;br /&gt;
#                  1 - optimize horizontally only&lt;br /&gt;
#                  2 - optimize vertically only&lt;br /&gt;
#                  3+ (all other numbers) - straight line&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
Every thing after * is ignored.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Linux]]&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;br /&gt;
[[Category:Glossary]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Heads</id>
		<title>Heads</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Heads"/>
				<updated>2007-06-25T21:27:44Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: add Rodeon VR Head&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Off the shelf ==&lt;br /&gt;
&lt;br /&gt;
There are a number of panoramic tripod heads on the market, at widely varying prices.&lt;br /&gt;
&lt;br /&gt;
=== Agnos ===&lt;br /&gt;
&lt;br /&gt;
[http://www.agnos.com Agnos] - Italian manufacturer of panoramic heads and accesories for panoramic photography. I bought an adapter for my fc-e9 fisheye adapter and it is very well built and of a good quality. They will also release (if they didn't yet) a new solution for creating a spherical pano out of 3 pics taken at 120 degrees each with a DSLR rotated at 45 degrees (!).&lt;br /&gt;
&lt;br /&gt;
=== Bogen/Manfrotto 303SPH ===&lt;br /&gt;
&lt;br /&gt;
A more expensive option is the Bogen/Manfrotto 303SPH, a large, but well made head. It could double as a boat anchor! I (Rick) have the 303SPH and the Agnos mentioned below.  Bogen has a site dedicated to their line of pano heads [http://www.manfrotto.com/303SPH/ Manfrotto 303SPH Mini-Site]. Some users complain that the head sags - I have not experienced this. This head can be used with virtually any lens / camera combination. I used to use it with the FC-E9 fisheye, but the head left too large of a footprint in the image. &amp;lt;small&amp;gt;--[[User:Add360.com|Add360.com]] 03:21, 7 Nov 2005 (EST)&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Jasper ===&lt;br /&gt;
&lt;br /&gt;
For me, the [http://www.stereoscopy.com/jasper/panorama.html Jasper Engineering] head has been an excellent value. At about $200, it's strong enough for serious 35mm or comparable digital cameras, which can be used horizontally or (with the included adapter) vertically. [[Nodal Point]] correction is horizontal and covers a variety of focal lengths as long as (I'm guessing) 135mm or more. Like so many heads, a bubble level is included, but hard to read when the head is set up at eye level. The builder will add custom touches very reasonably, In my case I put a Wimberly/Arca quick realease plate on the base. The base is machined aluminum; they provided a peel and stick piece of rubber for the base (to keep the plate from slipping) for about ten bucks.&lt;br /&gt;
&lt;br /&gt;
Pivoting parts on this unit are tightened with cap screws which have patent caps on them to give more leverage in tightening. I ended up prying these off and taking a t-handle allen wrench with me. I'm using a D-70 and a 17-35 usually; a smaller camera would be fine without that extra step.&lt;br /&gt;
&lt;br /&gt;
=== Kaidan ===&lt;br /&gt;
 &lt;br /&gt;
[http://www.kaidan.com Kaidan] offers two tripod heads. The [http://www.kaidan.com/Detail.bok?no=146 KiWi] and [http://www.kaidan.com/products/QPIV.html QuickPan]. The KiWi when equipped with [http://www.kaidan.com/Detail.bok?no=148 Twin-Axis Bracket] will work for smaller cameras equipped with fisheye lenses. This is a single-row solution. Kaidan's QuickPan Spherical will allow for multirow panoramas with either rectilinear or fisheye lenses.  The aforementioned Twin-Axis Bracket will also work on the QuickPan for single-row fisheye panoramas.&lt;br /&gt;
&lt;br /&gt;
Kaidan is also due to release their QuickPan Professional tripod head in the early part of 2006.&lt;br /&gt;
&lt;br /&gt;
=== Nodal Ninja ===&lt;br /&gt;
[http://www.NodalNinja.com/ Nodal Ninja] built by Fanotec, satisfies price (approx $199), quality, ease of use, and portability (less than 500 grams). Used by professionals and amateurs alike this is an easy to use full spherical panoramic tripod head. With this pano head you are able to produce single row 360 degree cylindrical panoramas, multirow 360x180 degree spherical panoramas, or mosaics. With the optional T-adapter you can mount your camera in Landscape mode as well as use many third party quick release plates.&lt;br /&gt;
This model does not support larger DSLR's like the D2X, Fuji S3 Pro or Canon Mark II type cameras or DSLR's using battery grips or larger lenses like the FC-E9 or the Rayonex lens. For these cameras Fanotec is developing the Nodal Ninja 5 due out est. August 2007.&lt;br /&gt;
&lt;br /&gt;
=== Novoflex ===&lt;br /&gt;
[http://www.novoflex.com/ Novoflex] is a German company with a good reputation in building high-precision photographic accessories.&lt;br /&gt;
The company offers two already pre-assembled products:&lt;br /&gt;
&lt;br /&gt;
The non-tiltable [http://www.novoflex.com/english/html/fr_esz8.htm Panorama VR System] for cylindrical panoramas.&lt;br /&gt;
&lt;br /&gt;
The universal [http://www.novoflex.com/english/html/fr_esz10.htm Panorama VR Pro System] for spherical panoramas.&lt;br /&gt;
&lt;br /&gt;
All parts are built modular to be combine- and interchangeable with others parts from Novoflex. E.g. you can use a standard angle bracket or focusing rack as a part of your panohead setup. This makes it easy to create a custom panorama head that fits your specific needs. Also, it gives you the option to upgrade your setup - or easily re-order a broken part.&lt;br /&gt;
&lt;br /&gt;
=== 360Precision ===&lt;br /&gt;
&lt;br /&gt;
The [http://www.360precision.com/ 360Precision] is a more expensive but very predictable panoramic head. At U.S. prices from $995-1095 for a single camera and lens setup, it is beyond the average user's price point. Its simple controls make it a very plausible option for those that make panoramas frequently and with the same equipment each time. The 360Precision heads are built to a specific body and specific lens combination, saving the photographer the need to find the entrance pupil for their lens and midpoint of the camera. Because of this, it is a very precise way to batch-create panoramas without needing to generate control points for each panorama. The sacrifice is that you lose the option of using a different combination of camera and lens with this head until you purchase an additional lens arm. &lt;br /&gt;
&lt;br /&gt;
Although these limits may seem restrictive, the results are very, very predictable. Their suggested workflow is to calibrate a template in your software (hugin, PTGui, PTMac), and for every panorama afterward, apply the template and immediatly skip to stitching. This saves you the time spent in generating and correcting control points in each panorama. For those that can save significant amounts of time and/or money by doing this, this head truly is a life saver. The generation of the template can be time consuming but may save you hours upon hours of post processing time compared to other solutions.&lt;br /&gt;
&lt;br /&gt;
It is possible to upgrade the 360Precision in modular ways, for instance if you decide to use a different lens for your panoramas, you can order just the lens arm you need, or if you decide to use a different camera for panoramas, you can order just the different camera leg and use the same lens arm. &lt;br /&gt;
&lt;br /&gt;
=== KingPano, Panosaurus ===&lt;br /&gt;
&lt;br /&gt;
Very affordable pan/tilt heads which allow horizontal and vertical rotation around the nodal point i.e. for [[high resolution partial panoramas|multi row panoramas]] are the, [http://gregwired.com/pano/Pano.htm Panosaurus] and [http://www.kingpano.com/ KingPano].&lt;br /&gt;
&lt;br /&gt;
=== Pinnacle VR Universal Pano Head ===&lt;br /&gt;
&lt;br /&gt;
Priced towards the upper end of the middle ($399) is the Pinnacle VR head that will work with any camera where the tripod hole is in the center of the lens axis. Using pin registration, it can accomodate cameras with or without battery grips attached and supports a wide range of lenses from fisheye to 135mm (on a full frame sensor, 80mm on an APS sized sensor). Details and sample sets of images with PTGui templates can be found at [http://www.pinnacle-vr.com/ Pinnacle VR]&lt;br /&gt;
&lt;br /&gt;
=== RODEON VR Head ===&lt;br /&gt;
Professional, high precision, fully automatic, programmable pano head ( Very expensive ).  The camera is tilted and rotated using motor control with high accuracy.  found at [http://www.dr-clauss.de/RODEONVRHead_e.htm RODEON VR Head]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Reviews ===&lt;br /&gt;
Various unbias reviews are floating about on many of these panorama tripod heads:&lt;br /&gt;
&lt;br /&gt;
'''360Precision''':&lt;br /&gt;
[http://www.360rage.com/panorama-hardware-item.php?i=2 360 Rage] | &lt;br /&gt;
[http://www.panoguide.com/forums/tipsntricks/2179 PanoGuide Forum] | &lt;br /&gt;
[http://www.chem.ox.ac.uk/oxfordtour/tutorial/index.asp?ID=40&amp;amp;pagename=360precision%20Adjuste Dr. Karl Harrison] | &lt;br /&gt;
[http://www.fromparis.com/html/technical_us_quicktime_vr_360precision_adjuste_head_part1.php Eric Rougier] | &lt;br /&gt;
&lt;br /&gt;
'''Kaidan''':&lt;br /&gt;
[http://www.precomania.com/rating_getprodrev.php/product_id=9277958/id_type=M Precomania] | &lt;br /&gt;
[http://www.vrphotography.com/data/pages/casestudies/vrheadreview1103.html VRPhotography] Note: This is an older review | &lt;br /&gt;
&lt;br /&gt;
'''Manfrotto 303SPH''':&lt;br /&gt;
[http://www.rosaurophotography.com/html/panoramas/vr_review/303sph/303sph_review.html Rosauro Ona] | &lt;br /&gt;
[http://www.precomania.com/publicprofile.php/productreviews/userid=624974 Precomania] | &lt;br /&gt;
[http://www.vrphotography.com/data/pages/casestudies/vrheadreview1103.html VRPhotography] | &lt;br /&gt;
&lt;br /&gt;
'''Nodal Ninja''':&lt;br /&gt;
[http://nodalninja.com/DPhotoUK_05_07_1024.jpg Digital Photographer Magazine] |&lt;br /&gt;
[http://www.rosaurophotography.com/html/panoramas/vr_review/nn3/nn3_review.html Rosauro Ona] |&lt;br /&gt;
[http://www.xyzcomputing.com/index.php?option=content&amp;amp;task=view&amp;amp;id=1000&amp;amp;Itemid=2 Josh Korwin of XYZ Computing] |&lt;br /&gt;
[http://panoguide.com/forums/tipsntricks/1984 PanoGuide Forum] | &lt;br /&gt;
[http://www.fromparis.com/html/technical_us_quicktime_vr_small_nadir_hole.php Eric Rougier] | &lt;br /&gt;
[http://www.pixelmania.nl/artikel.aspx?rubriekid=2&amp;amp;artikelid=301 Pixelmania (dutch)] | &lt;br /&gt;
[http://www.360rage.com/panorama-hardware-item.php?i=9 360 Rage] | &lt;br /&gt;
[http://www.galerie-photo.com/panoramique-nodal-ninja.html Thierry Rebours (french)] |&lt;br /&gt;
[http://www.camera2go.nl/readarticle.php?article_id=11 Cameraportal (dutch)] | Coming Soon - Reviews by: Ken Rockwell.com, Zoom.nl, Ellis Vener, Dr. Karl Harrison&lt;br /&gt;
&lt;br /&gt;
'''Novoflex''':&lt;br /&gt;
[http://www.360rage.com/panorama-hardware-item.php?i=12 360 Rage] | &lt;br /&gt;
&lt;br /&gt;
'''Panosaurus''': &lt;br /&gt;
[http://www.tawbaware.com/panosaurus_review.htm Tabaware] | &lt;br /&gt;
[http://panoramicearth.blogspot.com/2006/06/part-2-panorsaurus-head-review.html Peter Watts] | &lt;br /&gt;
[http://www.panoguide.com/forums/qna/2467 Panoguide forum] |&lt;br /&gt;
&lt;br /&gt;
== Lens brackets ==&lt;br /&gt;
Another way to keep the lens/camera fixed to the [[no-parallax point]] are lens brackets that directly mounted onto the lens itself. The advantages are less vibrations but the drawback is that you need one bracket for each lens.&lt;br /&gt;
&lt;br /&gt;
Some examples:&lt;br /&gt;
&lt;br /&gt;
* Agnos [http://www.agnos.com/catalogo.htm?v_categ_lista=PR001-RINGT Lens ring] &lt;br /&gt;
* Laser cut wooden brackets form [http://www.bophoto.com/bracket/ Pano Bracket from bophoto] &lt;br /&gt;
* Self made bracket [http://homepage.mac.com/wkaemena/Nikon8Head.jpg Willy Kaemena]&lt;br /&gt;
&lt;br /&gt;
== Self made ==&lt;br /&gt;
&lt;br /&gt;
If you want to build our own pan/tilt head you might get some ideas from those shown below.&lt;br /&gt;
&lt;br /&gt;
Multirow&lt;br /&gt;
* [http://www.einem.net/~dersch/heliarVR/heliarVR0.html Helmut Dersch]&lt;br /&gt;
* [http://www.erik-krause.de/panohead Erik Krause]&lt;br /&gt;
* [http://www.trozzreaxxion.net/misc/panorama/panorama.html Mike Runge (German)]&lt;br /&gt;
* [http://blog.robertbreuer.com/?p=16 Robert Breuer (German)]&lt;br /&gt;
* [http://www.dffe.at/panohead/ Bernhard Vogl]&lt;br /&gt;
* [http://www.nyfeler-mueller.ch/MonoPodHead/QTVR/MonopodHeadQTVR.html Peter Nyfeler/Monopod]&lt;br /&gt;
* [http://www.nyfeler-mueller.ch/PanoHeadMulti/PanoHeadMulti.html Peter Nyfeler/Tripod]&lt;br /&gt;
* [http://www.chem.uky.edu/xray/people/Parkin/panohead/panohead.html Sean Parkin (English)]&lt;br /&gt;
Single row&lt;br /&gt;
* [http://www.heiliger-net.de/panphoto/n_hardware.htm Panphoto.de (German)]&lt;br /&gt;
&lt;br /&gt;
[[Category:Hardware]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Adding_a_nadir_logo_with_text</id>
		<title>Adding a nadir logo with text</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Adding_a_nadir_logo_with_text"/>
				<updated>2007-05-29T16:40:48Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Updated link to Windows Photoshop plug-ins&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== For what it is... ==&lt;br /&gt;
The [[equirectangular]] projection is the starting point of several products.&amp;lt;br&amp;gt;&lt;br /&gt;
This projection is extermly streched at [[zenith]] and [[nadir]]. An insertion of&amp;lt;br&amp;gt;&lt;br /&gt;
a logo text isn't possible in one go or it looks distorted. in this tutorial&amp;lt;br&amp;gt;&lt;br /&gt;
I show you a way to create such a remapped text that can be inserted directly&amp;lt;br&amp;gt;&lt;br /&gt;
in an equirectangular panorama. The other advantage is that with this text you&amp;lt;br&amp;gt;&lt;br /&gt;
don't need to remap the whole panorama. Every transformation results in quality&amp;lt;br&amp;gt;&lt;br /&gt;
loss.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== What do we need... ==&lt;br /&gt;
* Photoshop or a software that can run Photoshop actions (f. e. Gimp [http://www.gimp.org/windows/ Win], [http://www.gimp.org/macintosh/ Mac OSX], [http://www.gimp.org/unix/ Unix] )&lt;br /&gt;
* An equirectangular panorama (PSPhere, f. e. 6000 x 3000 pixels)&lt;br /&gt;
* [[Panorama_Tools_Plugins]] for Photoshop Previously available on 'ePaperPress' by Thomas Niemann, are now available from Jim Watters at http://photocreations.ca/panotools/index.html&lt;br /&gt;
* Batch file to produce faces from an equirectangular pano(Pano2Faces.bat) and vice versa (Cube2Pano.bat) from Eric Gerds (download [http://www.pinlady.net/vr/#anchor3 here])&lt;br /&gt;
* Photoshop action to create the mirror ball cap with white text plate (download [[Media:cap_text.atn]])&lt;br /&gt;
* Logo text as Photoshop file (download [http://www.nyfeler-mueller.ch/TripodCapText/downloads/LogoText.psd LogoText.psd])&lt;br /&gt;
&lt;br /&gt;
== Creating a pano with nadir cap ==&lt;br /&gt;
&lt;br /&gt;
For this step you need the Photoshop action cap_text.atn to produce the&amp;lt;br&amp;gt;&lt;br /&gt;
white plate for the logo text.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_001.jpg]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
You have to stop the action when you areasked for the remapped text file.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_002.jpg]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Keep in mind the original size of your panorama (f. e. 6000 x 3000 pixels)&amp;lt;br&amp;gt;&lt;br /&gt;
You will need this value later.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
After this step the modified panorama looks like this:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_003.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
You see a white area where the logo text will be inserted.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Remapping nadir ==&lt;br /&gt;
&lt;br /&gt;
Here you can find two different ways to extract the nadir view for inserting a logo:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[#Remapping_nadir_with_PanoTools_Plugins|1.) With Panotools Plugins]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[#Remapping_nadir_with_extracting_cube_faces|2.) With extracting cube faces]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Other ways how to extract rectilinear images from a pano are described in [[Extracting and inserting rectilinear Views]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== ''Remapping nadir with PanoTools Plugins'' ===&lt;br /&gt;
First turn canvas by 180 degree:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_004.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Run Panotools plugin PTremap (Filter &amp;gt; ePaperPress &amp;gt; PTRemap):&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_005.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
With these settings and values below:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_007.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
When you hitting button Prefs (Image above) it should look like this:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_006.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Whith these settings the remap plugin saves the remapped image in a new file.&amp;lt;br&amp;gt;&lt;br /&gt;
This is really important because with every transformation of the panorama it&amp;lt;br&amp;gt;&lt;br /&gt;
will loose quality. In this step we need only to see the mesure of the white&amp;lt;br&amp;gt;&lt;br /&gt;
plate to transform the logo text to the right size.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The remapped view in which you can see the small white circular plate in the middle:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_008.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
And here with a closer look:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_009.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
You can see here also the '''50 % grid''' of Photoshop which is a really good helper to align the circular text.&amp;lt;br&amp;gt;&lt;br /&gt;
As you can see the crossing of the grid is exactly in the middle of the sphere.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Now it's time to be creative and think about your logo text.&amp;lt;br&amp;gt;&lt;br /&gt;
Or you take the way trough an additional method to extract the nadir view.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== ''Remapping nadir with extracting cube faces'' ===&lt;br /&gt;
&lt;br /&gt;
First of all, save panorama with a new name to the folder,&amp;lt;br&amp;gt;&lt;br /&gt;
where you also will find the resulting faces from these steps.&amp;lt;br&amp;gt;&lt;br /&gt;
In my case I use the name ''Entry_plate.tif'':&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
[[Image:CapText_028.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Open Windows Explorer and choose folder where you have saved the modified panorama.&amp;lt;br&amp;gt;&lt;br /&gt;
Right click on the file, go to ''send to...'' and choose ''Pano2Faces.bat'' to&amp;lt;br&amp;gt;&lt;br /&gt;
extract six Cube faces out of the equirectangular panorama.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_029.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Now a dos window pops up in which you have to define the size of the cubfaces:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_030.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
According to the size of the original panorama we have a equirectangular&amp;lt;br&amp;gt;&lt;br /&gt;
projection with 6000 pixel width and 3000 pixel height.&amp;lt;br&amp;gt;&lt;br /&gt;
*6000 / 3.14 = 1910 (approx.)&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_031.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Hit ''enter'' key and the batch file starts processing.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_032.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
..... and now you can see the six cube faces generated by the batch process.&amp;lt;br&amp;gt;&lt;br /&gt;
We need only the nadir face with the ending ''_66''. The white text plate is&amp;lt;br&amp;gt;&lt;br /&gt;
cleraly visible in the middle of this face.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_033.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Zoomed in.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_034.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Inserting text ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plugin method ===&lt;br /&gt;
&lt;br /&gt;
Open a prepared Photoshop text file to fill in like this (for download of an example click  [[#What_do_we_need...|here]]):&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_010.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
As you can see the logo is flipped 90 degree counter clock wise.&amp;lt;br&amp;gt;&lt;br /&gt;
This way the logo gets the right orientation when you remap it back to PSPhere.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''''Note:''''' After changing the text to your needs you have to flatten these two&amp;lt;br&amp;gt;&lt;br /&gt;
text layers to one layer!&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Drag and drop this Photoshop logo file over the file with the nadir view&amp;lt;br&amp;gt;&lt;br /&gt;
by holding the shift key to center the text. After this hit Ctrl+T to transform&amp;lt;br&amp;gt;&lt;br /&gt;
text layer to the right size. By holding the shift+alt keys and pull on one of&amp;lt;br&amp;gt;&lt;br /&gt;
the transform squares you can fit in the text to the white plate.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
[[Image:CapText_011.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
After this text transformations take a look at the layer palette in Photoshop.&amp;lt;br&amp;gt;&lt;br /&gt;
Be aware that the text layer is on top and active for the next steps. This way we&amp;lt;br&amp;gt;&lt;br /&gt;
we will only remap the text layer.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_012.jpg]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Cube face method ===&lt;br /&gt;
Inserting a prepared logo text by drag and drop. When you holding the shift key&amp;lt;br&amp;gt;&lt;br /&gt;
the text will be centered&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_035.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
As you can see with this wrokflow with cube faces logo text can be upright.&amp;lt;br&amp;gt;&lt;br /&gt;
So if you use the shared logo text sample you have to turn it 90 degree clock wise.&amp;lt;br&amp;gt;&lt;br /&gt;
To do so simply press Ctrl+T to transform this layer and turn it by dragging outside&amp;lt;br&amp;gt;&lt;br /&gt;
the selection or fill in 90 degree in the menue bar.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_036.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Logo text is positioned so we don't need background layer anymore.&amp;lt;br&amp;gt;&lt;br /&gt;
We delete it by darg and drop on the recycle bin as shown below:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_037.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Reduce the existing layer to background.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_038.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
..... so you can see a black text with a withe background in the size&amp;lt;br&amp;gt;&lt;br /&gt;
(1910 x 1910 pixels)of the original cube face:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_039.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Remapping text back to PSPhere ==&lt;br /&gt;
&lt;br /&gt;
Here you can find also two different ways to remap the logo text back to PSPhere (Eqirectangular projection):&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[#Remapping_text_back_to_PSPhere_with_PanoTools_Plugins|1.) With Panotools Plugins]]&lt;br /&gt;
(These steps have an addiotional transformation to the text because the plugin alter the size of the file while transforming)&amp;lt;br&amp;gt;&lt;br /&gt;
[[#Remapping_text_back_to_PSPhere_with_extracting_cube_faces|2.) With extracting cube faces]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Other ways how to insert rectilinear images into a pano are described in [[Extracting and inserting rectilinear Views]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  ''Remapping text back to PSPhere with PanoTools Plugins'' ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Run Panotools plugin PTremap (Filter &amp;gt; ePaperPress &amp;gt; PTRemap):&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_013.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Settings for the re-transformation:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_014.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
This is the remapped text without the pano as result from the remapping process:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_015.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== ''Reduce text file dimensions'' ====&lt;br /&gt;
&lt;br /&gt;
Now it's time to remember the initial size of the panorama. In this example&amp;lt;br&amp;gt;&lt;br /&gt;
I took a panorama with 6000 x 3000 pixels. When you go to '''''Image &amp;gt; Imagesize...'''''&amp;lt;br&amp;gt;&lt;br /&gt;
you can see a slightly different size of thies resulting remap:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_016.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Change the values to the inital size of the panorama you have choosen.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_017.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
One further step is to flip canvas back by 180 degree.&amp;lt;br&amp;gt;&lt;br /&gt;
The text is now on the right position at the bottom:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_018.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== ''Preparing the text file for further use'' ====&lt;br /&gt;
&lt;br /&gt;
The resulting text file should look like below. The only thing you see is the remapped text.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_019.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''''Note:''''' Before you follow with the next steps you have to copy&amp;lt;br&amp;gt;&lt;br /&gt;
background layer to a normal layer. Simply drag and drop background layer&amp;lt;br&amp;gt;&lt;br /&gt;
over the ''new layer'' button at the bottom of the layer palette. After this&amp;lt;br&amp;gt;&lt;br /&gt;
you have to delete background layer by drag and drop it over the trash bin also&amp;lt;br&amp;gt;&lt;br /&gt;
at the bottom of this palette.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_023.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Now you are ready for the next steps...&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
You have to select and delete the white color with the wizzard stick tool or&amp;lt;br&amp;gt;&lt;br /&gt;
with the color selection tool under menue selection:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_020.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
In this tool select the white color with the color picker with a tolerance of 40:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_021.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Here you can see how the selected white area looks like.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_022.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Now you can just hit the ''delete'' button and you are done. Save this file with descriptive name.&amp;lt;br&amp;gt;&lt;br /&gt;
(f. e. LogoTextRemapped_6000x3000.psd)&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===  ''Remapping text back to PSPhere with extracting cube faces'' ===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Now you call the second batch file from Eric Gerds (Cube2Pano.bat)&amp;lt;br&amp;gt;&lt;br /&gt;
by right click on the nadir face..... &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_040.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
A dos window pops up in which you have to define the width of the&amp;lt;br&amp;gt;&lt;br /&gt;
equirectangular pano. In our case this was 6000 pixels. Insert this&amp;lt;br&amp;gt;&lt;br /&gt;
value and press ''enter''.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_041.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Converting process with the nadir face only.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_042.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Open the resulting file (Entry_plate_(6000).tif in this case) for further editing.&amp;lt;br&amp;gt;&lt;br /&gt;
Choose with wizzard stick tool first the black and second the white area with tolerance&amp;lt;br&amp;gt;&lt;br /&gt;
you can see the remapped text on the bottom of this file&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_043.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Settings for wizzard stick tool:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_044.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
After deleting of black and white areas you see the finished text file:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_045.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Save this file as Photoshop document (.psd) and you are done&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_046.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Testing file size and position ==&lt;br /&gt;
&lt;br /&gt;
Select the produced file with Ctrl+A (In image below: ''LogoTextNiaRemapped6k3k.psd'')&amp;lt;br&amp;gt;&lt;br /&gt;
and drag and drop it over the panorama with the white text plate by holding shift key&amp;lt;br&amp;gt;&lt;br /&gt;
to center the file.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_024.jpg|thumb|left|300px|CapText_024.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Flaten the resulting image to background.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_025.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.....and save the panorama with the added text (Ctrl+Shift+S):&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Now you can open the saved file in a prefered viewer (f. e. [[PTEditor]])&amp;lt;br&amp;gt;&lt;br /&gt;
to see how the nadir looks like. If it looks like this.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_027.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
You are done. Otherwise you probably made a mistake by following this tutorial&amp;lt;br&amp;gt;&lt;br /&gt;
or you have to modify the size of the text file for a better fit.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How does it work now (The fast way) ==&lt;br /&gt;
'''Congratulation!!!'''&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Now comes the part to test how fast you can add a nice logo&amp;lt;br&amp;gt;&lt;br /&gt;
in the nadir region of your spherical panorama with your own&amp;lt;br&amp;gt;&lt;br /&gt;
generated text.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''Here we go:'''&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Open Photoshop, choose the action and press the start button:&amp;lt;br&amp;gt;&lt;br /&gt;
(For all following steps you will be guided by messages&amp;lt;br&amp;gt;&lt;br /&gt;
trough the whole process)&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_047.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Message No. 1 generated by the action, continue.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_048.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Open a desired panorama with the above parameters:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_049.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The action creates in the following steps mirrorball with textplate.&amp;lt;br&amp;gt;&lt;br /&gt;
Please wait untill you were asked for more.....&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Message No. 2 generated by the action, continue.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_050.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Message No. 3 generated by the action, continue.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_051.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Choose the file with the remapped text which you have created in the tutorial above:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_052.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Message No. 4 generated by the action, continue.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_053.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Message No. 5 generated by the action, continue.....&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_054.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Choose a place where you want to save the modified panorama with the added nadir cap with text:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:CapText_055.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Since you have created a remapped logo text you are able now to run the&amp;lt;br&amp;gt;&lt;br /&gt;
Photoshop action ''cap_text.atn'' in one go to produce a panorama with a nice&amp;lt;br&amp;gt;&lt;br /&gt;
mirrorball, a white textplate and a logo text of your choice in the nadir region&amp;lt;br&amp;gt;&lt;br /&gt;
to hide f. e. the tripod legs.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
If you don't like the mirrorball with the white text area, please feel free to modify&amp;lt;br&amp;gt;&lt;br /&gt;
the action to your needs. I hope this tutorial explains all the steps to your&amp;lt;br&amp;gt;&lt;br /&gt;
needs, otherwise change it or let me know what should be changed.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
I'm not native English speaking. Please change wrong words and meanings and take a look&amp;lt;br&amp;gt;&lt;br /&gt;
for typos.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Thank you.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-[[User:Pitdavos|Peter Nyfeler]] (Pitdavos) April 17, 2005&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial:Specialised]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Talk:Panorama_Tools_Plugins</id>
		<title>Talk:Panorama Tools Plugins</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Talk:Panorama_Tools_Plugins"/>
				<updated>2007-05-29T16:26:50Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Is there any reason to use the old version of the plugins.  Is there anyone that still uses them in parallel with the new ones? [[User:Jwatters|Jim Watters]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Talk:Panorama_Tools_Plugins</id>
		<title>Talk:Panorama Tools Plugins</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Talk:Panorama_Tools_Plugins"/>
				<updated>2007-05-29T16:01:36Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Is there any reason to use the old version of the plugins.  Is there anyone that still uses them in parallel with the new ones? [[Jim Watters]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/User:Jwatters</id>
		<title>User:Jwatters</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/User:Jwatters"/>
				<updated>2007-05-29T16:01:18Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Jim Watters '''&lt;br /&gt;
&lt;br /&gt;
home site at http://photocreations.ca&lt;br /&gt;
&lt;br /&gt;
Contributer to [http://photocreations.ca/panotools Panorama Tools] including Widows distribution with 16bit plug-ins.&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Panorama_Tools_Plugins</id>
		<title>Panorama Tools Plugins</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Panorama_Tools_Plugins"/>
				<updated>2007-05-29T15:49:22Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Updated windows link to download plugins to photocreations.ca/panotools&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Preface ==&lt;br /&gt;
The Panorama Tools Plugins provide the most powerfull interface to the [[Panorama tools]] library. Virtually any function that is coded inside the [[pano12]] library can be accessed by the plugins. [[PTStitcher]] and [[PTOptimizer]], which are the basis for the different [[GUI front-ends]] only use a small subset of all available functions.&lt;br /&gt;
&lt;br /&gt;
The plugins come as a set of four files in [[Photoshop]] plugin/filter (on windows: .8BF) or [[Gimp]] plugin format and are named adjust, correct, perspect and remap. They are compatible not only with photoshop but with other image editing programs that can load photoshop compatible filters, too. (f.e. IrfanView, [[GraphicConverter]], ...)&lt;br /&gt;
&lt;br /&gt;
In addition, the [[Panorama Gimp plug-in]] includes the '''Pan Controls''' filter, an early prototype of [[PTEditor]].&lt;br /&gt;
&lt;br /&gt;
== Updates ==&lt;br /&gt;
Updated windows filters for 16 bit compatibility are included in Panorama Tools distribution on Jim Watters web site.  Previously available on 'ePaperPress' by Thomas Niemann, are now available from Jim Watters at http://photocreations.ca/panotools/index.html  To distinguish them from the old version they are named them  PTAdjust, PTCorrect, PTPerspect and PTRemap.&lt;br /&gt;
&lt;br /&gt;
The [[Panorama Gimp plug-in]] is available from [http://panotools.sourceforge.net/ Sourceforge].&lt;br /&gt;
&lt;br /&gt;
Versions for Mac OSX - 16 bit compatible and allow for recording Photoshop actions with additional LensFix plugin - are available from http://www.kekus.com/software/plugin.html&lt;br /&gt;
&lt;br /&gt;
The four plugins are listed in the photoshop filter menu under 'Panorama Tools'. Both versions can be used in parallel, if needed.&lt;br /&gt;
&lt;br /&gt;
== Documentation == &lt;br /&gt;
[[Helmut Dersch]] never published an extensive documentation of the plugins, but he provided several tutorials covering most of the features. With the original plugins comes a readme file from which I took most of the information provided here. For convenience it can be found [[Panotools plugins Readme|here]]. &lt;br /&gt;
&lt;br /&gt;
== Preferences ==&lt;br /&gt;
The filters are named PTAdjust, PTCorrect, PTPerspective and PTRemap (old names without PT). They all open with a small dialog which always has a small button called 'Prefs' in the upper right corner. This button opens a Preferences dialog, where the user can choose beween several ways how panotools should deal with result images. (More information can be found in the  [[Panotools plugins Readme#Setting Preferences|Panotools plugins Readme file]])&lt;br /&gt;
&lt;br /&gt;
=== (a) Display Cropped/Framed Resultimage ===&lt;br /&gt;
The [[Photoshop]] plugin interface does not provide resizing of an image window. If you choose this option, the result of an operation is displayed in the same window as (and replacing) the source image.&lt;br /&gt;
&lt;br /&gt;
This option is recommended if the image size does not change or if the area outside the window bounds is not needed.&lt;br /&gt;
&lt;br /&gt;
=== (b) Save full sized Result to File ===&lt;br /&gt;
If the image will get resized this option is recommended. The file name you provide here is extended by a number in case there will be more than one file - no need to specify different names if you want to save multiple results. Files will be in PSD format.&lt;br /&gt;
&lt;br /&gt;
=== (c) Open Result with Application ===&lt;br /&gt;
This only makes sense if you choose (b) too. The saved result will be opend by the application you specify here (with full path). This will normally be your image editor (Photoshop or whatever).&lt;br /&gt;
&lt;br /&gt;
=== (d) Don't save Mask ===&lt;br /&gt;
This is a special option for old photoshop LE, which was not able to deal with masks. It might be useful for other applications that don't use masks, too.&lt;br /&gt;
&lt;br /&gt;
=== More ===&lt;br /&gt;
In the upper right corner of the Preferences filter there is another small button named 'More'. If you press it, you get a dialog where you can choose [[interpolation|interpolator]] and [[gamma]]. See [http://www.path.unimelb.edu.au/~dersch/interpolator/interpolator.html Testing Interpolator Quality] and [http://www.path.unimelb.edu.au/~dersch/interpolator/interpolator.html Interpolation and Gamma Correction] articles by Helmut Dersch for details or read in the Panotools plugins Readme about [[Panotools plugins Readme#Selecting the Interpolator|Selecting the Interpolator]] or [[Panotools plugins Readme#Gamma Correction|Gamma Correction]]&lt;br /&gt;
&lt;br /&gt;
== The Filters ==&lt;br /&gt;
Here a brief description and some links to tutorials that deal with the particular filter. (More information can be found in the [[Panotools plugins Readme#How to use the filters|Panotools plugins Readme file]])&lt;br /&gt;
&lt;br /&gt;
=== PTAdjust ===&lt;br /&gt;
(Former name: Adjust)&lt;br /&gt;
The most powerful of the filters. In the upper part of the dialog it lets you extract and insert images of any projection into and from images of any projection. The lower part is dedicated to reading control points and running the optimizer. The functionality of the lower part is mostly replaced by the common [[GUI front-ends]] now. (See also [[Panotools plugins Readme#Adjust|Panotools plugins Readme file]])&lt;br /&gt;
&lt;br /&gt;
==== Extract and Insert ====&lt;br /&gt;
For both tasks you have two choices: 'Use Options' or 'Use Script'. &lt;br /&gt;
&lt;br /&gt;
===== Use Options =====&lt;br /&gt;
If you check 'Use Options' you need to press the 'Set' button. For both extracting and inserting there opens the same dialog, where you can specify what and how should be inserted or extracted. &lt;br /&gt;
&lt;br /&gt;
The dialog has two parts, an upper one that specifies the image to extract or insert and a lower one that specifies the panorama from and to where the extraction/insertion should be done and how this should be performed.&lt;br /&gt;
&lt;br /&gt;
Only values that can not be read from the source image must be specified. This is f.e. HFOV (horizontal [[Field of View]]), Format and Position in any case and Width and Height only for result images.&lt;br /&gt;
&lt;br /&gt;
In addition there is a 'Correct' button in the upper part, which opens the same dialog as the [[#Correct|Correct]] filter. Any transformation that is specified there is performed on the source image together (in one mathematical operation) with the Adjust filter operation in order to avoid unnecessary [[interpolation]] steps.&lt;br /&gt;
&lt;br /&gt;
Some tutorials that make use of the Adjust filter, Extract and Insert feature by Options:&lt;br /&gt;
* [http://www.all-in-one.ee/~dersch/pedit/panoediting.html Editing Panoramic Images] from [[Helmut Dersch]] (caution, PanCtrls plugin mentioned there doesn't work anymore).&lt;br /&gt;
* [http://www.path.unimelb.edu.au/~dersch/architect/arch.html Using Fisheye Lenses for Architectural Photography] from [[Helmut Dersch]].&lt;br /&gt;
* [http://www.path.unimelb.edu.au/~dersch/panorectilinear/panorectilinear.html Extracting Rectilinear Images from Panoramas] by [[Helmut Dersch]].&lt;br /&gt;
* [[Edit_zenith_and_nadir_in_one_go_with_Adjust_filter|Using Ptools Adjust PS-Plugin to edit nadir / zenith]] by Flemming V. Larsen. This one shows how to remap the panorama in order to retouche nadir and zenith in one image.&lt;br /&gt;
&lt;br /&gt;
==== Use Script ====&lt;br /&gt;
The &amp;quot;Use Script&amp;quot; option loads a text file script to set the preferences for the Adjust plug-in.  Valid scripts include [[PTOptimizer]] and [[PTStitcher]] scripts.  The file type must be text.  Two uses for this option are to run the Optimizer without using [[PTOptimizer]], to extract a set of images from a panorama (Adjust must be run once for each output image) or to stitch (Adjust must be run once for each input image).&lt;br /&gt;
&lt;br /&gt;
=== PTCorrect ===&lt;br /&gt;
(Former name: Correct)&lt;br /&gt;
These filter gathers some useful functions that have not directly to do with panorama. Each of the corrections has a separate Options dialog. All of the corrections are made in one transformation step thus avoiding unnecessary [[interpolation]] steps. (See also: [[Panotools plugins Readme#Correct|Panotools plugins Readme file]])&lt;br /&gt;
&lt;br /&gt;
==== Radial Shift ====&lt;br /&gt;
This is a frontend to the lens correction features of panotools. Lens correction is performed by a third order polinomial, the formula is displayed above the input fields. &lt;br /&gt;
&lt;br /&gt;
The purpose of Radial Shift is to correct for [[barrel distortion]], [[pincushion distortion]] or wavy [[lens distortion]], for transverse [[chromatic aberration]] and for color separation by scanning cameras. Units for r_src and r_dest is image portrait width/2 (or landscape height/2), half of the shorter edge of the image corresponds to r_src=1.&lt;br /&gt;
  &lt;br /&gt;
If you check the option 'vertical', only the vertical axis is affected by the shift, and the unit is relative to image height/2. This can be used to correct lens distortions in Panoramic cameras. Finally, the option 'horizontal' shifts each pixel horizontally by an amount determined by its vertical distance from the center line.&lt;br /&gt;
&lt;br /&gt;
For radial correction coefficients a, b and c are identical to the lens correction parameters used by [[PTStitcher]] and all of the GUIs ([[#Preface|see top]]). The (linear) d coefficient specifies the image size and is not available for PTStitcher where the v parameter (Field of View) plays it's role. &lt;br /&gt;
&lt;br /&gt;
The effect of the 4 coefficients can hardly be described but easily visualized. Go to [http://www.4pi.org/downloads/ Peter Reimer's site] and get abc.xls if you want to see how the coefficients (un-)distort an image.&lt;br /&gt;
&lt;br /&gt;
Radial Shift can be performed for red, green and blue channel separately in order to correct for complex transverse [[Chromatic aberration]]. &lt;br /&gt;
&lt;br /&gt;
Some tutorials about correct, Radial Shift:&lt;br /&gt;
* [http://www.path.unimelb.edu.au/~dersch/barrel/barrel.html Correcting Barrel Distortion] by Helmut Dersch.&lt;br /&gt;
* [http://www.path.unimelb.edu.au/~dersch/pscan/pscan.html Correcting Color Separation in Scanning Back Cameras] by Helmut Dersch.&lt;br /&gt;
* [http://ray.cg.tuwien.ac.at/rft/Photography/TipsAndTricks/Aberration/ Correcting Chromatic Aberration of Digital Cameras]&lt;br /&gt;
* [[PTShift]] by Eric Gerds, which provides a sophisticated way to determine the right coefficients in order to correct transverse [[chromatic aberration]] with Radial Shift&lt;br /&gt;
&lt;br /&gt;
==== Vertical Shift &amp;amp; Horizontal Shift ====&lt;br /&gt;
Shifts the entire image vertically respectively horizontally. Red, green and blue channel can be shifted by individual amounts. Input in pixels.&lt;br /&gt;
&lt;br /&gt;
==== Shear ====&lt;br /&gt;
Shears the entire image. Shear is a distortion that shifts f.e. the upper edge to the right and the lower edge to the left (horizontal shear). Used to correct shear by some scaners. Input in pixels. &lt;br /&gt;
&lt;br /&gt;
==== Scale ==== &lt;br /&gt;
Scales the image using the panotools high quality [[interpolation|interpolators]]. Input in pixels. You can preserve aspect ratio upon scaling by setting one of width or height to 0.&lt;br /&gt;
&lt;br /&gt;
==== Radial Luminance ====&lt;br /&gt;
Corrects for edge light fall off ([[Vignetting]]). Correction can be done separately for red, green and blue channel. Input in brightness values (-255 to +255). Half of that amount will be subtracted from the center pixels of the image, whereas the other half will be added to the edge pixels.&lt;br /&gt;
&lt;br /&gt;
Radial Luminance in the original panotools distribution caused some banding especially in areas with uniform color (like sky f.e.) because of 8 bit operation. The [[pano12]] developers solved this problem recently (version 2.7.0.6) and with the 16 bit version ([[#Preface|see top]]) it should be no problem at all (if used in 16 bit).&lt;br /&gt;
&lt;br /&gt;
* [http://www.einem.net/~dersch/heliarVR/heliarVR0.html Creating VR-Panoramas Using a 15mm Rectilinear Lens] by Helmut Dersch contains a short section about Radial Luminance.&lt;br /&gt;
&lt;br /&gt;
==== Cut Frame ====&lt;br /&gt;
Crops image to the brightest rectangle of a given size. Useful to crop scanned images to equal sizes. Set the preferences options to (b) and (c), since this tool changes the size of the image!&lt;br /&gt;
  &lt;br /&gt;
It automates the tedious task of cropping frames around scanned images,&lt;br /&gt;
especially around circular fisheye images. If you are scanning negatives,&lt;br /&gt;
the frame may be white. To crop this frame, invert the colours of the image,&lt;br /&gt;
then run it through 'Cut Frame', and invert it back. This can be easily&lt;br /&gt;
automated by photoshop actions or similar.&lt;br /&gt;
&lt;br /&gt;
==== Fourier Filter ====&lt;br /&gt;
A Fourier Transformation and Wiener Filter. &lt;br /&gt;
* [http://www.animatif.com/dersch/startrail/trail.html Attempt to Restorate Star Trail Images] by Helmut Dersch is a possible use of a Wiener Filter.&lt;br /&gt;
&lt;br /&gt;
==== Load &amp;amp; Save ====&lt;br /&gt;
All settings made in the Correct filter can be saved to and loaded from a binary preferences file. [[PTShift]] makes use of this ability to directly save chromatic aberration correction parameters to Correct, Radial Shift settings.&lt;br /&gt;
&lt;br /&gt;
=== PTPerspective ===&lt;br /&gt;
(Former name: Perspective)&lt;br /&gt;
See [[Panotools plugins Readme#Perspective|PanoTools plugins Readme file]]&lt;br /&gt;
&lt;br /&gt;
=== PTRemap ===&lt;br /&gt;
(Former name: Remap)&lt;br /&gt;
See [[Panotools plugins Readme#Remap|PanoTools plugins Readme file]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]] [[Category:Software:Platform:Linux]] [[Category:Software:Platform:Mac OS X]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;[[User:Erik Krause|Erik Krause]] 19:24, 19 Apr 2005 (EDT)&amp;lt;/small&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Photoshop</id>
		<title>Photoshop</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Photoshop"/>
				<updated>2007-05-25T00:46:36Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Adobe Photoshop is one of the most versatile and sophisticated image editors. There are several versions and flavours available: &lt;br /&gt;
* For the amateur often bundled with a digital camera or a scanner named 'photoshop LE' (older) or 'Photoshop Elements' (recent). &lt;br /&gt;
* For the professional (or who ever wants to pay the higher price) more featured and simply named 'Photoshop', 'Photoshop CS', 'Photoshop CS2' or 'Photoshop CS3' (PS CS3 is also available in an 'Extended' version)&lt;br /&gt;
&lt;br /&gt;
Photoshop CS/CS2/CS3/CS3Ext. are currently the only versions that allows layered [[full 16 bit workflow]] (alternatives see below). For any other panorama work photoshop is recommended although not strictly necessary since f.e. [[Panorama Tools Plugins]] work with many different image editors as long as they are compatible to use photoshop plugins (like f.e. IrfanView).&lt;br /&gt;
&lt;br /&gt;
Some (randomly chosen) features of Photoshop CS (current version is CS3/CS3Extended):&lt;br /&gt;
* Full color management.&lt;br /&gt;
* 16 bit layers&lt;br /&gt;
* large image support up to 300,000 x 300,000 pixels&lt;br /&gt;
* action recorder for simple automated tasks&lt;br /&gt;
* three different script languages for complex scripting: Javascript, VBScript (Windows only), Applescript (Mac only).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is possible to launch a spherical viewer from inside Photoshop. To do this you need to create a shortcut to the viewer and place it in the Photoshop install directory.&lt;br /&gt;
&lt;br /&gt;
[Photoshop folder]\Helpers\Jump To Graphics Editor &lt;br /&gt;
eg: C:\Program Files\Adobe\Photoshop CS\Helpers\Jump To Graphics Editor\SPi-V engine.lnk&lt;br /&gt;
or: Macintosh HD:Applications:Adobe Photoshop CS:Helpers:Jump To Graphics Editor:SPi-V engine alias &lt;br /&gt;
&lt;br /&gt;
This will create a menu item in 'File -&amp;gt; Jump to'.&lt;br /&gt;
&lt;br /&gt;
There are several free stand along [[Panorama_Viewers]] that can be used.  For example [http://fieldofview.nl/spv-dev/docs/howto/standalone SPi-V] can be used to view Photoshop, Tiff, and jpeg files. [http://www.fsoft.it/panorama/FSPViewer.htm FSPViewer] can be used to view Tiff and jpeg files.&lt;br /&gt;
&lt;br /&gt;
For those on a Mac [http://www.pangeasoft.net/pano/plugin/panopreviewer.html Pangeasoft] has a filter plug-in solution for a small fee.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
More information is available on on [http://www.adobe.com/ adobe.com]. Adobe's knowledge base has an article that covers file size limitations on Mac OS X and more or less also applies for the Windows version: [http://www.adobe.com/go/kb401089  Optimize performance in Photoshop CS3 on Mac OS].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Alternatives to Photoshop ==&lt;br /&gt;
&lt;br /&gt;
* The [[Gimp]] is a Open Source image editor, however it doesn't yet support 16 bit colordepth.&lt;br /&gt;
&lt;br /&gt;
* [[Cinepaint]] is a version of the gimp that does support [[full 16 bit workflow]] and [[HDR]] images.&lt;br /&gt;
&lt;br /&gt;
* [http://www.jasc.com/ Paint Shop Pro] is a popular Windows shareware application that supports photoshop plugins such as the [[Panorama Tools Plugins]]&lt;br /&gt;
&lt;br /&gt;
* [[Krita]] is another Open Source image editor (Linux only) that can read [[HDR]] files.&lt;br /&gt;
&lt;br /&gt;
* [http://www.vips.ecs.soton.ac.uk/ VIPS] is an Open Source image processing system with a GUI (not a paint program) that can be used to manipulate [[HDR]] images.&lt;br /&gt;
&lt;br /&gt;
* [[GraphicConverter]] is a shareware image editor for Mac OS, supports 16 bit colordepth and Photoshop Plug-Ins, features RAW import, Batch conversion and ColorManagement.&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Photoshop</id>
		<title>Photoshop</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Photoshop"/>
				<updated>2007-05-23T21:13:52Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Launch Spherical Viewer from Photoshop&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Adobe Photoshop is one of the most versatile and sophisticated image editors. There are several versions and flavours available: &lt;br /&gt;
* For the amateur often bundled with a digital camera or a scanner named 'photoshop LE' (older) or 'photoshop Elements' (recent). &lt;br /&gt;
* For the professional (or who ever wants to pay the higher price) more featured and simply named 'photoshop', 'photoshop CS' or 'photoshop CS2' &lt;br /&gt;
&lt;br /&gt;
Photoshop CS and CS2 are currently the only versions that allows layered [[full 16 bit workflow]] (alternatives see below). For any other panorama work photoshop is recommended although not strictly necessary since f.e. [[Panorama Tools Plugins]] work with many different image editors as long as they are compatible to use photoshop plugins (like f.e. IrfanView).&lt;br /&gt;
&lt;br /&gt;
Some (randomly chosen) features of current pro version (photoshop CS):&lt;br /&gt;
* Full color management.&lt;br /&gt;
* 16 bit layers&lt;br /&gt;
* large image support up to 300,000 x 300,000 pixels&lt;br /&gt;
* action recorder for simple automated tasks&lt;br /&gt;
* three different script languages for complex scripting: Javascript, VBScript (Windows only), Applescript (Mac only).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is possible to launch a spherical viewer from inside Photoshop. To do this you need to create a shortcut to the viewer and place it in the Photoshop install directory.&lt;br /&gt;
&lt;br /&gt;
[Photoshop folder]\Helpers\Jump To Graphics Editor &lt;br /&gt;
eg: C:\Program Files\Adobe\Photoshop CS\Helpers\Jump To Graphics Editor\SPi-V engine.lnk&lt;br /&gt;
or: Macintosh HD:Applications:Adobe Photoshop CS:Helpers:Jump To Graphics Editor:SPi-V engine alias &lt;br /&gt;
&lt;br /&gt;
This will create a menu item in 'File -&amp;gt; Jump to'.&lt;br /&gt;
&lt;br /&gt;
For more information see: [http://fieldofview.nl/spv-dev/docs/howto/standalone SPi-V], and [http://www.fsoft.it/panorama/FSPViewer.htm FSPViewer] for stand along Viewers.&lt;br /&gt;
For those on a Mac [http://www.pangeasoft.net/pano/plugin/panopreviewer.html Pangeasoft] has a more intergrated solution.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
More information on http://www.adobe.com&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Alternatives to photoshop ==&lt;br /&gt;
&lt;br /&gt;
* The [[Gimp]] is a Open Source image editor, however it doesn't yet support 16 bit colordepth.&lt;br /&gt;
&lt;br /&gt;
* [[Cinepaint]] is a version of the gimp that does support [[full 16 bit workflow]] and [[HDR]] images.&lt;br /&gt;
&lt;br /&gt;
* [http://www.jasc.com/ Paint Shop Pro] is a popular Windows shareware application that supports photoshop plugins such as the [[Panorama Tools Plugins]]&lt;br /&gt;
&lt;br /&gt;
* [[Krita]] is another Open Source image editor (Linux only) that can read [[HDR]] files.&lt;br /&gt;
&lt;br /&gt;
* [http://www.vips.ecs.soton.ac.uk/ VIPS] is an Open Source image processing system with a GUI (not a paint program) that can be used to manipulate [[HDR]] images.&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Photoshop</id>
		<title>Photoshop</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Photoshop"/>
				<updated>2007-05-23T21:09:13Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Adobe Photoshop is one of the most versatile and sophisticated image editors. There are several versions and flavours available: &lt;br /&gt;
* For the amateur often bundled with a digital camera or a scanner named 'photoshop LE' (older) or 'photoshop Elements' (recent). &lt;br /&gt;
* For the professional (or who ever wants to pay the higher price) more featured and simply named 'photoshop', 'photoshop CS' or 'photoshop CS2' &lt;br /&gt;
&lt;br /&gt;
Photoshop CS and CS2 are currently the only versions that allows layered [[full 16 bit workflow]] (alternatives see below). For any other panorama work photoshop is recommended although not strictly necessary since f.e. [[Panorama Tools Plugins]] work with many different image editors as long as they are compatible to use photoshop plugins (like f.e. IrfanView).&lt;br /&gt;
&lt;br /&gt;
Some (randomly chosen) features of current pro version (photoshop CS):&lt;br /&gt;
* Full color management.&lt;br /&gt;
* 16 bit layers&lt;br /&gt;
* large image support up to 300,000 x 300,000 pixels&lt;br /&gt;
* action recorder for simple automated tasks&lt;br /&gt;
* three different script languages for complex scripting: Javascript, VBScript (Windows only), Applescript (Mac only).&lt;br /&gt;
&lt;br /&gt;
It is possible to launch a spherical viewer from inside Photoshop. To do this you need to create a shortcut to the viewer and place it in the Photoshop install directory.&lt;br /&gt;
&lt;br /&gt;
[Photoshop folder]\Helpers\Jump To Graphics Editor &lt;br /&gt;
eg: C:\Program Files\Adobe\Photoshop CS\Helpers\Jump To Graphics Editor\SPi-V engine.lnk&lt;br /&gt;
or: Macintosh HD:Applications:Adobe Photoshop CS:Helpers:Jump To Graphics Editor:SPi-V engine alias &lt;br /&gt;
&lt;br /&gt;
This will create a menu item in 'File -&amp;gt; Jump to'.&lt;br /&gt;
&lt;br /&gt;
See: [http://fieldofview.nl/spv-dev/docs/howto/standalone SPi-V], and [http://www.fsoft.it/panorama/FSPViewer.htm FSPViewer] for stand along Viewers.&lt;br /&gt;
For those on a Mac [http://www.pangeasoft.net/pano/plugin/panopreviewer.html Pangeasoft] has a more intergrated solution.&lt;br /&gt;
&lt;br /&gt;
More information on http://www.adobe.com&lt;br /&gt;
&lt;br /&gt;
== Alternatives to photoshop ==&lt;br /&gt;
&lt;br /&gt;
* The [[Gimp]] is a Open Source image editor, however it doesn't yet support 16 bit colordepth.&lt;br /&gt;
&lt;br /&gt;
* [[Cinepaint]] is a version of the gimp that does support [[full 16 bit workflow]] and [[HDR]] images.&lt;br /&gt;
&lt;br /&gt;
* [http://www.jasc.com/ Paint Shop Pro] is a popular Windows shareware application that supports photoshop plugins such as the [[Panorama Tools Plugins]]&lt;br /&gt;
&lt;br /&gt;
* [[Krita]] is another Open Source image editor (Linux only) that can read [[HDR]] files.&lt;br /&gt;
&lt;br /&gt;
* [http://www.vips.ecs.soton.ac.uk/ VIPS] is an Open Source image processing system with a GUI (not a paint program) that can be used to manipulate [[HDR]] images.&lt;br /&gt;
&lt;br /&gt;
[[Category:Software:Platform:Windows]]&lt;br /&gt;
[[Category:Software:Platform:Mac OS X]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Tutorials</id>
		<title>Tutorials</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Tutorials"/>
				<updated>2007-03-06T15:19:47Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: /* Settings, values and miscellaneous */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{RatingStarSystem}}&lt;br /&gt;
== General ==&lt;br /&gt;
* [[The why and how of panoramas]] {{RateStar|1}}&lt;br /&gt;
&lt;br /&gt;
== Photography ==&lt;br /&gt;
* [[Special issues with fisheye lenses]] {{RateStar|1}}&lt;br /&gt;
* [[ChristmasBallPanoTutor| Making a spherical panorama by photographing a christmas ball]] {{RateStar|2}}&lt;br /&gt;
* [[Sigma 8mm Fisheye Canon 350D MrotatorCP]] {{RateStar|1}}&lt;br /&gt;
* [[Philopod pitch variation]] technique for shooting handheld {{RateStar|3}}&lt;br /&gt;
&lt;br /&gt;
== Preparation ==&lt;br /&gt;
* [[Contrast Blending|Contrast Blending (Exposure Blending)]] {{RateStar|3}}&lt;br /&gt;
* [[A simple approach to HDR-blending]] {{RateStar|2}}&lt;br /&gt;
* [[Working with RAW files in CS2|Working with RAW files in Photoshop CS2]] {{RateStar|2}}&lt;br /&gt;
* [[RAW dynamic range extraction]] {{RateStar|3}}&lt;br /&gt;
* [[Chromatic aberration]] {{RateStar|2}}&lt;br /&gt;
* [[HDR compression]] {{RateStar|3}}&lt;br /&gt;
&lt;br /&gt;
== Stitching ==&lt;br /&gt;
* [http://www.dffe.at/panotools/ptgui5-00e.html Basic Panorama Stitching workflow] with PTGui 5 {{RateStar|1}}&lt;br /&gt;
* Workflows for [[high resolution partial panoramas]] {{RateStar|2}}&lt;br /&gt;
* Workflows for [http://www.dffe.at/pano360/ full spherical panoramas] {{RateStar|1}}&lt;br /&gt;
* [http://homepage.ntlworld.com/j.houghton/optitute.htm Using the optimizer] {{RateStar|1}}&lt;br /&gt;
* [[Full 16 bit workflow]] {{RateStar|3}}&lt;br /&gt;
* [[Using Autopano-SIFT With PTGui]] {{RateStar|2}}&lt;br /&gt;
* [[How to stitch flat images]] {{RateStar|1}}&lt;br /&gt;
* [http://www.dojoe.net/tutorials/linear-pano Creating linear panoramas with Hugin] {{RateStar|2}}&lt;br /&gt;
* [[16bit_workflow_with_hugin|16bit workflow for Hugin]] {{RateStar|2}}&lt;br /&gt;
* [[HDR workflow with hugin]] {{RateStar|3}}&lt;br /&gt;
* [[Stitching Nadir Shots]] {{RateStar|2}}&lt;br /&gt;
* [[Fixing nadir parallax errors]] {{RateStar|3}}&lt;br /&gt;
&lt;br /&gt;
== Leveling and Remapping ==&lt;br /&gt;
* [[Leveling a Finished Panorama]] {{RateStar|2}}&lt;br /&gt;
* [http://www.dffe.at/pano360/pano-horizont-360_en.html Straightening a (360-degree) Panorama] {{RateStar|1}}&lt;br /&gt;
* [[Leveling a VR shooting setup]] {{RateStar|1}}&lt;br /&gt;
* [[Perspective correction]] {{RateStar|1}}&lt;br /&gt;
* [[Find entrance pupil|How to find entrance pupil (nodal point)]] {{RateStar|1}}&lt;br /&gt;
* [[Unusual remappings]]{{RateStar|3}}&lt;br /&gt;
&lt;br /&gt;
== Retouching ==&lt;br /&gt;
=== Zenith and Nadir retouching ===&lt;br /&gt;
* [[Zenith and Nadir editing overview]] {{RateStar|1}}&lt;br /&gt;
* [[How to use PTEditor]] {{RateStar|1}}&lt;br /&gt;
* [[Extracting and inserting rectilinear Views]] {{RateStar|1}}&lt;br /&gt;
* [[Using enblend to fill the &amp;quot;Hole in the floor&amp;quot;]] {{RateStar|2}}&lt;br /&gt;
* [[Edit zenith and nadir in one go with PTGui]] {{RateStar|2}}&lt;br /&gt;
* [[Edit zenith and nadir in one go with Adjust filter]] {{RateStar|2}}&lt;br /&gt;
* [[How to use enblend for patching zenith and nadir images]] {{RateStar|2}}&lt;br /&gt;
&lt;br /&gt;
=== Tripod Caps ===&lt;br /&gt;
* [[Adding a nadir cap (mirror ball)]] {{RateStar|2}}&lt;br /&gt;
* [[Adding a nadir logo with text]] {{RateStar|3}}&lt;br /&gt;
&lt;br /&gt;
=== Other retouching ===&lt;br /&gt;
* [[Upsampling a single image with ptstitcher]] {{RateStar|2}}&lt;br /&gt;
* [[Retouching broken lines in Photoshop]] {{RateStar|2}}&lt;br /&gt;
* [[Mending parallax errors with the shear tool]] {{RateStar|2}}&lt;br /&gt;
* [http://www.inertia-llc.com/sandbox/tutorials/shadow-matchcolor/ Shadow Removal on Panoramic Photography] {{RateStar|2}}&lt;br /&gt;
&lt;br /&gt;
== Web Presentation ==&lt;br /&gt;
* [[Partial Panoramas using ROI in PTViewer]] {{RateStar|2}}&lt;br /&gt;
* [[HTML code for several viewers]] {{RateStar|1}}&lt;br /&gt;
* [[Uploading Wiki Related Files]] Note: Just use the &amp;quot;upload file&amp;quot; link on the left of the page&lt;br /&gt;
* [[create a custom ptviewer jar file]] {{RateStar|3}}&lt;br /&gt;
* [[Geo-referencing panoramas with Google Map]] {{RateStar|3}}&lt;br /&gt;
* [[Have a single ptviewer.jar file per website]] {{RateStar|3}}&lt;br /&gt;
&lt;br /&gt;
=== Object Movies ===&lt;br /&gt;
* [[Create object movies]] {{RateStar|1}}&lt;br /&gt;
* [[Self-made object turntable]] {{RateStar|1}}&lt;br /&gt;
&lt;br /&gt;
== Printing ==&lt;br /&gt;
* [[Printing panoramas]] {{RateStar|2}}&lt;br /&gt;
* [[Philosphere]] {{RateStar|1}}&lt;br /&gt;
&lt;br /&gt;
== Settings, values and miscellaneous==&lt;br /&gt;
* [[How to allocate enough RAM for PTEditor]] {{RateStar|2}}&lt;br /&gt;
* [[Circular cropping values in PTGui]] {{RateStar|1}}&lt;br /&gt;
* [[Build pano12 from sourcecode]] {{RateStar|2}}&lt;br /&gt;
* [[Build pano12 from sourcecode MSVC]] {{RateStar|3}}&lt;br /&gt;
* [[How to install actions in Photoshop]] {{RateStar|1}}&lt;br /&gt;
* [[How to install plug-ins in Photoshop]] {{RateStar|1}}&lt;br /&gt;
* [[Enable windows file extensions]] {{RateStar|2}}&lt;br /&gt;
* [[Embed QTVR into Powerpoint]] {{RateStar|1}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/SoC2007_Supporters</id>
		<title>SoC2007 Supporters</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/SoC2007_Supporters"/>
				<updated>2007-03-06T15:16:47Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: /* Individuals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''instructions'''&lt;br /&gt;
* if you don't have one yet, [http://wiki.panoramatools.org/Special:Userlogin open a Panotools wiki account]&lt;br /&gt;
* Log in with your Panotools wiki account&lt;br /&gt;
* find below which category better fits you&lt;br /&gt;
* click on the edit link next to the category title&lt;br /&gt;
* add your entry as a bullet point at the end of the page (see the examples above you)&lt;br /&gt;
* enter your name, place and role in the panoramic community&lt;br /&gt;
* if possible, add a link to some relevant panoramic work next to your name&lt;br /&gt;
&lt;br /&gt;
==The following organizations and users support the Open Source developers in their efforts to become a mentoring organization for Google's Summer of Code 2007:==&lt;br /&gt;
&lt;br /&gt;
===Organizations===&lt;br /&gt;
&lt;br /&gt;
===Individuals===&lt;br /&gt;
* Yuval Levy, Québec, Canada, photographer [http://www.photopla.net/060825montpellier/]&lt;br /&gt;
* Bruno Postle, UK.  Designer/engineer, user of [[panotools]] and [[hugin]].  Panotools wiki contributor [http://www.bruno.postle.net/panorama/].&lt;br /&gt;
* Roger Williams, Japan. Photographer [http://www.usefilm.com/member/roger/], user of [[panotools]].&lt;br /&gt;
* Jeffrey Martin, Czech Republic. Photographer, user of [[panotools]] and [[hugin]]. [http://www.prague360.com]&lt;br /&gt;
* Ken Turkowski, United States, scientist and developer of panorama software, including [[QuickTime VR]] and [[DeFish]].  [http://www.worldserver.com/turk], [http://www.realitypixel.com]&lt;br /&gt;
* Mark Fink, United States, photographer [http://northernlight.net], Universal pano head developer [http://pinnacle-vr.com]&lt;br /&gt;
* Toni Garbasso, Roma, Italy, photographer [http://www.studioargento.com/]&lt;br /&gt;
* Pip Price, Photographer, UK, [http://pipsqueakmedia.biz], creator of Peak District View [http://peakdistrictview.com]&lt;br /&gt;
* Claudio Lanconelli, Ravenna, Italy, photographer, user of [[hugin]] [http://www.viaggioinromagna.it]&lt;br /&gt;
* Jim Watters, Canada, Photographer [http://photocreations.ca] and software developer and contributer to [[panotools]]&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Panorama_tools_applications</id>
		<title>Panorama tools applications</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Panorama_tools_applications"/>
				<updated>2007-02-09T01:55:54Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;There are several tools in the panorama tools package by [[Helmut Dersch]] that are intended for other use than mere panorama creation or display. And of course there are lots of possibilities to use panorama tools core functionality for non-panoramic purposes.&lt;br /&gt;
&lt;br /&gt;
== Tools in the package ==&lt;br /&gt;
The tools for Panorama Tools consist of Java apps, plug-ins, and applications.  For most of these tools there is a small readme inside the package. Apart from that there is almost no documentation found on the web. Any contribution is welcome!&lt;br /&gt;
&lt;br /&gt;
===[[PTEditor]]=== &lt;br /&gt;
Java Interactive Panorama Editor. &lt;br /&gt;
&lt;br /&gt;
===[[PTPicker]]=== &lt;br /&gt;
Java graphical interface frontend for control point selection used by [[PTStitcher]], [[PTStereo]], [[PTInterpolate]], [[PTMorpher]],  and other tools.  Mostly replaced by new GUIs of [[Hugin]], [[PTGui]], [[PTMac]], and [[PTAssembler]].&lt;br /&gt;
&lt;br /&gt;
===[[PTCrypt]]=== &lt;br /&gt;
Java app to encrypt panoramas to only display from one web location. &lt;br /&gt;
&lt;br /&gt;
===[[PTStitcher]]=== &lt;br /&gt;
The main panorama stitching tool which remaps, adjusts and combines arbitrary images to panoramic views. &lt;br /&gt;
&lt;br /&gt;
===[[PTAverage]]===&lt;br /&gt;
reduces noise in digital images by averaging several scans. Example on [[Helmut Dersch]]'s page: [http://www.path.unimelb.edu.au/~dersch/average/average.html]&lt;br /&gt;
&lt;br /&gt;
===[[PTInterpolate]]===&lt;br /&gt;
given two images of the same scene taken from different viewpoints, this tool creates any intermediate view.&lt;br /&gt;
&lt;br /&gt;
===[[PTMorpher]]===&lt;br /&gt;
morphing tool. A nice tutorial is found on 4pi.org: [http://www.4pi.org/tutorial/ptmorpher.en.html]&lt;br /&gt;
&lt;br /&gt;
===[[PTStereo]]===&lt;br /&gt;
creates 3-dimensional objects from pairs or many images&lt;br /&gt;
&lt;br /&gt;
===[[PTStripe]]===&lt;br /&gt;
combines images into movie stripes for viewing in Object-viewers. &lt;br /&gt;
&lt;br /&gt;
===[[PTAdjust]]===&lt;br /&gt;
Plug-in to extract and insert images from a panorama. &lt;br /&gt;
&lt;br /&gt;
===[[PTCorrect]]===&lt;br /&gt;
Plug-in to correct problems with images. &lt;br /&gt;
&lt;br /&gt;
===[[PTRemap]]===&lt;br /&gt;
Change an image from one projection to another projection.&lt;br /&gt;
&lt;br /&gt;
===[[PTPerspect]]===&lt;br /&gt;
Simulates a shift lens in software for normal or fisheye lenses.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===[[PTViewer]] Extensions===&lt;br /&gt;
These extensions are described in total on [[Helmut Dersch]]'s page: [http://www.path.unimelb.edu.au/~dersch/PTVJ/helpers.html] (Descriptions taken mostly from there)&lt;br /&gt;
&lt;br /&gt;
====PTCompass====&lt;br /&gt;
Inserts a user defined image which rotates synchronized with the pan-angle. It may be used as navigation and orientation aid. The image may be placed anywhere in the appletwindow, and it can rotate in both directions: like a real compass, or opposite.&lt;br /&gt;
====PTMovies====&lt;br /&gt;
Inserts a set of images into the panoramic image or the viewer window, depending on the warp-parameter. If warp is true (default) the images are inserted into the panorama and they have to be warped to the panoramic projection. They are displayed perspectively corrected in PTViewer and appear like natural elements of the VR-scene. Example on [[Helmut Dersch]]'s page: [http://www.path.unimelb.edu.au/~dersch/movie/PanoMovie.html]&lt;br /&gt;
====PTMedia====&lt;br /&gt;
Many media formats are available in [[PTViewer]] if JMF is installed on the host computer. These include avi-video, linear quicktime video, flash 2, mpeg1/2/3, many soundformats etc. See [http://www.javasoft.com/ the Sun Java site] for supported media types.&lt;br /&gt;
====PTObject====&lt;br /&gt;
displays 3D-objects using a set of images similar to the Apple [[QTVR]]-viewer. The images are organized in horizontal stripes, and may cover several rows. There is an optional mask image, that can be supplied to make portions of the original image transparent. Example (with a panorama as background!) on [[Helmut Dersch]]'s page: [http://www.path.unimelb.edu.au/~dersch/object/Object.html]&lt;br /&gt;
====PTZoom====&lt;br /&gt;
High resolution zoomable images can be inserted using this extension. These images are seamlessly integrated in the viewer window, and automatically show up when the user pans and zooms into the respective feature. PTZoom uses [[Rectilinear Projection|rectilinear]] images from any normal or telephoto lens. Example on [[Helmut Dersch]]'s page: [http://www.path.unimelb.edu.au/~dersch/zoom/Zoom.html]&lt;br /&gt;
&lt;br /&gt;
==Non-panoramic uses of panotools==&lt;br /&gt;
Due to its incredible flexibility panotools core functions can be used for a wide range of non-panoramic uses including (but not limited to) the following:&lt;br /&gt;
&lt;br /&gt;
===Lens distortion correction===&lt;br /&gt;
[[Barrel distortion|Barrel]], [[Pincushion distortion|pincushion]] and even wavy lens distortion can be corrected with panotools [[lens correction model]]. A project dedicated to this purpose is [[PTLens]] by Thomas Niemann. Tutorials on how to find suitable lens correction parameters are several on the web. A small selection:&lt;br /&gt;
*Philo's tutorial on how to correct distortion and perspective in one go: [http://www.philohome.com/barrelpers/barrelpers.htm]&lt;br /&gt;
*Thomas Niemann's description of the calibration process: [http://epaperpress.com/pano/calDistort.html] (eventually follow 'Calibration' 'Lens Distortion')&lt;br /&gt;
*Using [[straight line control points]]: [http://www.erik-krause.de/verzeichnung/distort_en.htm]&lt;br /&gt;
&lt;br /&gt;
===Perspective correction===&lt;br /&gt;
Panotools is able to simulate (geometrically exact) a shift lens. See [[Perspective correction]] for details.&lt;br /&gt;
&lt;br /&gt;
Another nice tutorial by Philo, showing how to correct perspective and [[lens distortion]] in one go:&lt;br /&gt;
[http://www.philohome.com/barrelpers/barrelpers.htm]&lt;br /&gt;
&lt;br /&gt;
===Chromatic aberration correction===&lt;br /&gt;
Since transversal [[chromatic aberration]] is essentially a different lens distortion for different colors, panotools can correct it by using different correction parameters on the different color channels. See [[Chromatic aberration]] page for details.&lt;br /&gt;
&lt;br /&gt;
===Different uses with 'Correct' plugin===&lt;br /&gt;
The panotools [[Panorama_Tools_Plugins#Correct|Correct]] plugin can perform various tasks including:&lt;br /&gt;
*[[Panorama_Tools_Plugins#Radial_Shift|Radially]], [[Panorama_Tools_Plugins#Vertical_Shift_.26_Horizontal_Shift|horizontally]] or [[Panorama_Tools_Plugins#Vertical_Shift_.26_Horizontal_Shift|vertically]] shift an image or it's single color channels.&lt;br /&gt;
*[[Panorama_Tools_Plugins#shear|Shear]] or [[Panorama_Tools_Plugins#scale|scale]] an image using high quality [[Interpolation|interpolators]].&lt;br /&gt;
*Adjust [[Panorama_Tools_Plugins#radial_luminance|radial luminance]] (edge light fall off - [[vignetting]])&lt;br /&gt;
*[[Panorama_Tools_Plugins#cut_frame|Crop]] images to the brightest rectangle of a given size.&lt;br /&gt;
*Apply a [[Panorama_Tools_Plugins#Fourier_filter|Fourier filter]] for example to restore stars from star trail images.&lt;br /&gt;
&lt;br /&gt;
===Photographing in Tight Spaces===&lt;br /&gt;
Since a fisheye allows for a very wide field of view it can be used to shoot in tight spaces or if you can't get enough distance for a wide angle shot. Panotools will remap to a more conventional view:&lt;br /&gt;
* A nice tutorial on tight spaces by 'Big' Ben Kreunen: [http://www.path.unimelb.edu.au/~bernardk/tutorials/360/alternatives/tight_spaces.html]&lt;br /&gt;
* Architectural example on [[Helmut Dersch]]'s page: [http://www.path.unimelb.edu.au/~dersch/architect/arch.html]&lt;br /&gt;
&lt;br /&gt;
===Stitching Flat Images===&lt;br /&gt;
such as a large paper document, scanned in pieces on a flatbed scanner.  See [[How to stitch flat images]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;--[[User:Erik Krause|Erik Krause]] 12:14, 16 Jul 2005 (EDT)&amp;lt;/small&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/PTPicker</id>
		<title>PTPicker</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/PTPicker"/>
				<updated>2007-02-09T01:47:23Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;PTPicker is a Java graphical interface frontend for control point selection used by [[PTStitcher]], [[PTStereo]], [[PTInterpolate]], [[PTMorpher]],  and other tools.  Mostly replaced by new GUIs of [[Hugin]], [[PTGui]], [[PTMac]], and [[PTAssembler]].&lt;br /&gt;
&lt;br /&gt;
PTPicker lets you select and edit feature points in pairs of images. These pairs are taken from a list of images comprising a project, which can be a panorama or a 3D-object. The coordinates of the feature points are written to a textfile, which is handed over to  one of the appropriate helper applications [[PTStitcher]], [[PTStereo]], [[PTInterpolate]],  [[PTMorpher]]. This is transparent to the user, who ideally should not get in contact with these programs directly. Any of the helper programs can be run directly &lt;br /&gt;
with a rudimentary user interface, scripted via Applescript (MacOS) or run from the command line (Win and Linux).&lt;br /&gt;
&lt;br /&gt;
See example for your operating system here http://webuser.hs-furtwangen.de/~dersch/&lt;br /&gt;
&lt;br /&gt;
To load images into PTPicker, you need to open or create a project file first. Then you can open a pair of (ideally overlapping) images. For details of the scripting syntax, see the Examples package.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== Control points: ==&lt;br /&gt;
&lt;br /&gt;
Control points are locations in two images exhibiting identical features. Their coordinates are used by the optimizer to adjust images for stitching. PTPicker displays three types of feature points: &lt;br /&gt;
 &lt;br /&gt;
   - '''red''': selected points &lt;br /&gt;
   - '''green''': deselected points having a counterpart in the second image window &lt;br /&gt;
   - '''blue''': deselected points having no counterpart in the second image window &lt;br /&gt;
&lt;br /&gt;
You can hide blue points using the command 'Show linked points' in the View menu. They are displayed again by clicking 'Show All points'. Color and size of points is settable via Menu options (View-&amp;gt;Point Colors/Size). &lt;br /&gt;
&lt;br /&gt;
There are three cursor modes: Setting and selecting  points, and only selecting points. You toggle between the modes using the commands 'Select'/'Set Points' in the 'Edit' menu.&lt;br /&gt;
 &lt;br /&gt;
To set points, use the arrow cursor, and click in the front window. The small Lupe aids in placement of the control point. A red dot is set, and simultaneously another red dot appears in the second window (provided there is a second image open). Switch to the second window by clicking it, then click again onto the selected point, and while holding the mouse button down, drag it to the location it belongs. &lt;br /&gt;
&lt;br /&gt;
If you click onto an existing point, this point becomes selected. Selected points are removed by typing backspace, or clicking 'clear' in the 'Edit' menu. &lt;br /&gt;
&lt;br /&gt;
The Select Mode allows you to quickly select one or several points without the danger of accidentally setting new or moving old points. It is useful for  setting triangles, see next paragraph. &lt;br /&gt;
&lt;br /&gt;
You can find a control point from the list displayed in the project file by hitting'Find' in the 'Edit' menu, and entering the point number. The corresponding images are automatically loaded, and scrolled to the newly selected and highlighted point. &lt;br /&gt;
&lt;br /&gt;
If a blue point is selected, ie a point having no counterpart in the second open window, only this point becomes highlighted (red). If you switch to the other window, and click at some location, a new control point is created which is now linked to the previously selected point. This feature allows you to link points among more than two images. &lt;br /&gt;
&lt;br /&gt;
Zooming in and out is performed using the respective commands in the 'View' menu. You can revert to the original magnification by hitting 'Normal'. Zooming in automatically improves accuracy of point adjustment, since you can then set control points at fractional grid positions. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
== Triangles: ==&lt;br /&gt;
 &lt;br /&gt;
Triangles must be set for 3D-objects, but are not required and ignored for panoramas. Triangles are set by selecting three points, and clicking 'Set Triangle' in the 'Edit' menu. [[PTStereo]], [[PTMorpher]] and [[PTInterpolate]] uses this triangular portion for texture mapping, hence it is only selected in one (the front) window. Triangles are removed by selecting the three corner points and clicking 'Remove Triangle'. Using 'clear' or Backspace removes the selected points together with the triangle which might &lt;br /&gt;
not be what you want. Triangles are also removed if any single of the corner points is removed using the 'clear' command. &lt;br /&gt;
&lt;br /&gt;
Triangles are dimmed but still transparent. You can hide the filling using the 'Hide Triangles' command in the 'Edit' window. They reappear after hitting 'Show Triangles'. &lt;br /&gt;
&lt;br /&gt;
There is an option to automatically triangulate all selected points in one (the front) window. Selecting Edit-&amp;gt;Triangulate initiates the Delaunay-triangulation. Selecting 'Reduce' rearranges selected triangles according to the Delaunay rules. The option 'Copy Triangles' sets the selected triangles in the second window also. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
== Menus: ==&lt;br /&gt;
 &lt;br /&gt;
  &lt;br /&gt;
''File-&amp;gt;Open:'' &lt;br /&gt;
Open existing project file; must be a valid Panorama Tools script. All images belonging to the project must be in the same folder as this script. &lt;br /&gt;
&lt;br /&gt;
''File-&amp;gt;New:'' &lt;br /&gt;
Invokes Project Editor. Choose output format, lens type, image count and focal length of your lens, and a standard project file for a single row panorama is created. This has to be saved in the same folder as your images. Please note that there are many more options to modify projects, which you can  set by editing the project file using a text editor. See the commented example &lt;br /&gt;
script 'Optimizer Script' in the Examples package. &lt;br /&gt;
  &lt;br /&gt;
''File-&amp;gt;Close:'' &lt;br /&gt;
Close open project. &lt;br /&gt;
&lt;br /&gt;
''File-&amp;gt;Save/Save as:'' &lt;br /&gt;
Save Project file with current set of control points/ triangles. &lt;br /&gt;
&lt;br /&gt;
''File-&amp;gt;Revert to Saved:'' &lt;br /&gt;
Load saved version of Project file. This is required if the project &lt;br /&gt;
file has been edited with another program while open in PTPicker. &lt;br /&gt;
&lt;br /&gt;
''File-&amp;gt;Quit:'' &lt;br /&gt;
&lt;br /&gt;
''Edit-&amp;gt;Clear:'' &lt;br /&gt;
Remove selected points &lt;br /&gt;
&lt;br /&gt;
''Edit-&amp;gt;Select:'' &lt;br /&gt;
Set cursor to cross/ select mode &lt;br /&gt;
&lt;br /&gt;
''Edit-&amp;gt;Select All'' &lt;br /&gt;
Select all points in the front window &lt;br /&gt;
&lt;br /&gt;
''Edit-&amp;gt;Deselect'' &lt;br /&gt;
Deselect all points &lt;br /&gt;
  &lt;br /&gt;
''Edit-&amp;gt;Set Point:'' &lt;br /&gt;
Set cursor mode to set points &lt;br /&gt;
&lt;br /&gt;
''Edit-&amp;gt;set triangle:'' &lt;br /&gt;
Set a triangle comprising three selected points. Complains if there are not enough selected. &lt;br /&gt;
&lt;br /&gt;
''Edit-&amp;gt;remove triangle:'' &lt;br /&gt;
Remove triangle comprising of three selected points. &lt;br /&gt;
&lt;br /&gt;
''Edit-&amp;gt;Copy Triangles'' &lt;br /&gt;
Copies the selected triangles into the front window &lt;br /&gt;
&lt;br /&gt;
''Edit-&amp;gt;Triangulate'' &lt;br /&gt;
Triangulates points in the front window &lt;br /&gt;
&lt;br /&gt;
''Edit-&amp;gt;Reduce'' &lt;br /&gt;
Rearranges selected triangles &lt;br /&gt;
&lt;br /&gt;
''Edit-&amp;gt;Find:'' &lt;br /&gt;
Find control point with selected number. Two images are opened and scrolled to the selected point. &lt;br /&gt;
&lt;br /&gt;
''View-&amp;gt;Zoom in/out'' &lt;br /&gt;
Magnification of image is changed by a factor of 2. Control point size remains unchanged. &lt;br /&gt;
&lt;br /&gt;
''View-&amp;gt;Normal'' &lt;br /&gt;
Recover original magnification. &lt;br /&gt;
&lt;br /&gt;
''View-&amp;gt;Point Color'' &lt;br /&gt;
Set color for selected,deselected and single points &lt;br /&gt;
&lt;br /&gt;
''View-&amp;gt;Point Size'' &lt;br /&gt;
Set size of points &lt;br /&gt;
&lt;br /&gt;
''View-&amp;gt;Show all Points:'' &lt;br /&gt;
Display linked and single points. &lt;br /&gt;
&lt;br /&gt;
''View-&amp;gt;Show linked Points:'' &lt;br /&gt;
Display only linked points &lt;br /&gt;
&lt;br /&gt;
''View-&amp;gt;Show Triangles:'' &lt;br /&gt;
Triangles are filled with grey color. &lt;br /&gt;
&lt;br /&gt;
''View-&amp;gt;Hide Triangles:'' &lt;br /&gt;
Triangles are not displayed. &lt;br /&gt;
''&lt;br /&gt;
Project-&amp;gt;View Script:'' &lt;br /&gt;
Launch SimpleText and display Project File. &lt;br /&gt;
&lt;br /&gt;
''Project-&amp;gt;Optimizer:'' &lt;br /&gt;
Call [[PTOptimizer]] to process Project file.  Commands are added for [[PTStitcher]]. While optimizing, a  progress dialog is displayed. This can be stopped at any time if the fit appears to be good enough. On Linux, Progress is reported in the XTerminal window. Press CTRL-c to interrupt at any time if the fit is acceptable. &lt;br /&gt;
&lt;br /&gt;
''Project-&amp;gt;Stitcher:'' &lt;br /&gt;
Call [[PTStitcher]] to process images and project file. Please see the tutorial and [[PTStitcher]]s documentation about the many options you have for panorama creation. Clicking this menu option must be preceded by a call to Project-&amp;gt;Optimizer, since otherwise no Stitcher commands are added to the project file.  This is also required, if the project has been written to disk using the 'save' or 'save as' command, since this also removes the stitcher commands.&lt;br /&gt;
 &lt;br /&gt;
''Project-&amp;gt;3D Stereo:'' &lt;br /&gt;
Call PTStereo to process images and project file. No optimization is required in this case, sinc [[PTStereo]] does all the necessary calculations. &lt;br /&gt;
&lt;br /&gt;
''Project-&amp;gt;Morph'' &lt;br /&gt;
Call PTMorpher to morph the images. &lt;br /&gt;
''&lt;br /&gt;
Project-&amp;gt;Interpolate'' &lt;br /&gt;
Call PTInterpolate to interpolate the images&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/PTStripe</id>
		<title>PTStripe</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/PTStripe"/>
				<updated>2007-02-09T01:17:09Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;combines images into movie stripes for viewing in Object-viewers.  Works as a drag and drop application. Output image strip is a [[TIFF]] file, 100% size and quality. Assembles images right to left in alphabetical order. Caution: does not warn if your output image overwrites an existing image.  Prompts for output name and location. &amp;lt;small&amp;gt;--[[User:Add360.com|Add360.com]] 22:09, 1 Dec 2005 (EST)&amp;lt;/small&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/PTInterpolate</id>
		<title>PTInterpolate</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/PTInterpolate"/>
				<updated>2007-02-08T04:11:47Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== PTInterpolate ==&lt;br /&gt;
&lt;br /&gt;
given two images of the same scene taken from different viewpoints, this tool creates any intermediate view.&lt;br /&gt;
&lt;br /&gt;
It is not just a morpher, but a tool to create physically real intermediate views between images of the same scene taken from different viewpoints.  This includes facilities to handle occlusions and create movies.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Basic Steps: ==&lt;br /&gt;
Download example project http://www.all-in-one.ee/~dersch/examplesWin.zip&lt;br /&gt;
&lt;br /&gt;
Start 'PTPicker', and open the file 'Project_interpolate' from the File menu.  Alternatively, you can drop it onto PTPickers icon.  In the menu 'Images' you will find a list of 2 images belonging to this project.  You can open images from the list for viewing and setting control points, or triangles.  For now, leave the images and points unchanged, since these have already been set. &lt;br /&gt;
&lt;br /&gt;
Open the 'Project' menu and select 'Interpolate' in the 'Project' menu.  You will be asked for a name of the result files.  Choose a new separate folder since many images will be created.  After clicking ok, PTInterpolate creates 20 frames which interpolating the two images.  You can create a linear Quicktime movie from these frames using Apples free utility 'ConvertToMovie'.&lt;br /&gt;
&lt;br /&gt;
current version of PTInterpolate is 1.0.0.1 2001/12/02 provided by Helmut Dersch with his last distribution of PanoTools bundle.&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/PTStereo</id>
		<title>PTStereo</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/PTStereo"/>
				<updated>2007-02-08T03:59:30Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== PTStereo ==&lt;br /&gt;
&lt;br /&gt;
creates 3-dimensional objects from pairs or many images&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== General: ==&lt;br /&gt;
&lt;br /&gt;
PTStereo creates 3D-worlds from sets of photographs.  Applications range from object movies to terrain visualization.  Any set of images can be used without alignment requirements.  3D-data can be extracted for any feature visible in both images, as long as the images have different viewpoint (non-zero stereo base). &lt;br /&gt;
&lt;br /&gt;
User input involves the triangulation of all images: Corresponding feature points have to be identified, and connected to a mesh consisting of triangles.  The output of PTStereo is a 3D-world ready to be viewed with any VRML or 3DMF-browser.  This world consists of a texture mapped indexed face set.  In addition, world coordinates of all feature points and camera positions are calculated and can be used for measurements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using PTStereo: ==&lt;br /&gt;
&lt;br /&gt;
PTStereo should be used as helper for the frontend 'PTPicker'.  Using PTPicker, a text file is generated consisting of feature point coordinates and triangles.  &lt;br /&gt;
&lt;br /&gt;
o Arbitrary many input images can be used&lt;br /&gt;
&lt;br /&gt;
o Map-to-map option: A map or ground plan of an object can be used as one of the input images.&lt;br /&gt;
&lt;br /&gt;
o World coordinates of camera positions are individually settable or can be calculated.&lt;br /&gt;
&lt;br /&gt;
o 3DMF output option added.&lt;br /&gt;
&lt;br /&gt;
o Textures for texture mapping can be selected from different images.&lt;br /&gt;
&lt;br /&gt;
o Use the front end 'PTPicker' for simple triangulation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== More Uses: ==&lt;br /&gt;
&lt;br /&gt;
(1) The final Project file contains vertex coordinates in Meshwork syntax. These can be cut and pasted into mesh file to generate a 3D-mesh for editing in Meshwork.&lt;br /&gt;
&lt;br /&gt;
(2) The final Project file contains commands ('o'-lines) for Panorama Tools:  Execute these lines in the adjust-submenu (mode 'insert', 'use script') and the images texture0.jpg and texture1.jpg are transformed to have parallel film planes.  They can then be used for view interpolation  with any Morphing software, or for stereo viewing.&lt;br /&gt;
&lt;br /&gt;
Accuracy depends on the distance of an object relative to the stereo base. Distances much larger (eg &amp;gt; 20 times) or features much smaller than the stereo base are not well resolved.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Basic Steps: ==&lt;br /&gt;
&lt;br /&gt;
Download example project http://www.all-in-one.ee/~dersch/examplesWin.zip&lt;br /&gt;
Start 'PTPicker', and open the file 'Project_vrml' from the File menu.  Alternatively, you can drop it onto PTPickers icon.  In the menu 'Images' you will find a list of 3 images belonging to this project.  You can open images from the list for viewing and setting control points, or triangles.  For now, leave the images and points unchanged, since these have already been set. &lt;br /&gt;
&lt;br /&gt;
Open the 'Project' menu and select '3D Stereo' in the 'Project' menu. You will be asked for a name of the result, and you can accept the suggestion 'Result.WRL'. This file must be saved in the same directory as the image files. To interactively view the scene, you need a VRML browser (for a list of mac-viewers check http://www.MacWeb3D.org, for me Cosmoplayer works best).  Open Result WRL in the viewer and navigate according to the viewer docs.&lt;br /&gt;
&lt;br /&gt;
Alternatively, a 3DMF output file is created by using the supplied project file 'Project_3dmf'. This file is very huge, since it  contains the images in an uneconomic ascii format. Use this format only for exchange with other graphic editors. Using the supplied large images may cause problems viewing the file with the Quickdraw viewer. On my system this only works if the images are scaled down by a factor of 4.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Script Formats: ==&lt;br /&gt;
&lt;br /&gt;
PTStereo supports any number of images for one scene.  The sample script &amp;quot;3D Object&amp;quot; in the 'Project Models' folder is one to be used for two images. You can change lens type (eg to fisheye) according to the syntax outlined in the &amp;quot;Optimizer script&amp;quot;. The line starting with 'p' (Panorama description) is a dummy line and should be left as it is.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Starting a New Project: ==&lt;br /&gt;
&lt;br /&gt;
Put the images belonging to the object into one folder, start 'PTPicker' and click 'New' in the File menu. Choose one of the available Project Models, and save it into the folder with images. Then open images from the 'Image' menu.  The first time you  click on an image, you have to find it, but then its name is remembered. Set a couple of control points for each pair of overlapping images, and periodically save your work. Then set triangles which indicate which image should be used for texture mapping. Finally, call 'PTStereo' from the menu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
current version of PTStereo is 1.0.0.1 2001/12/02 provided by Helmut Dersch with his last distribution of PanoTools bundle.&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/PTAverage</id>
		<title>PTAverage</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/PTAverage"/>
				<updated>2007-02-08T03:21:40Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;PTAverage averages several identical image into one density enhanced output file.  Drop all images onto the application icon.  The images can come from a digital camera or scanner.&lt;br /&gt;
&lt;br /&gt;
PTAverage is a small utility which reduces noise in scanned images, and increases density.  Often, the dynamic range of scanners is limited by random noise of the CCD or the lamp.  In that case averaging of several scans can be used to remove noise and improve image quality.  This is especially useful in panoramic imaging where large dynamic ranges are common.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Operation: ==&lt;br /&gt;
&lt;br /&gt;
Generate several identical scans of the same image.  Be sure to scan with exactly the same settings, and do not touch the film holder.  Any misalignment of the images will blur the final result.  The more scans you make, the better will be the noise reduction.  Using 2 images increases density D by 0.15, 5 images by 0.36 and 10 images by 0.5.  Of course, at some point the random noise is suppressed below the detection limits of the device in which case no further improvement is possible.&lt;br /&gt;
&lt;br /&gt;
Save all images in lossless PICT format.  Then select all images, and drop them at once onto PTAverage icon.  You will be asked for a result file name.  Then PTAverage reads one file after the other, and creates the final image.&lt;br /&gt;
&lt;br /&gt;
== Example: ==&lt;br /&gt;
&lt;br /&gt;
TODO: provide non copyrighted images and example&lt;br /&gt;
for now see [http://www.all-in-one.ee/~dersch/average/average.html]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
current version of PTAverage is 1.0.0.1 2001/12/02 provided by Helmut Dersch with his last distribution of PanoTools bundle.&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/File:Single.PNG</id>
		<title>File:Single.PNG</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/File:Single.PNG"/>
				<updated>2007-02-08T01:39:15Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Enlargement of original showing noise.
Copyright ©; H. Dersch 1999&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Enlargement of original showing noise.&lt;br /&gt;
Copyright ©; H. Dersch 1999&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/File:Orig.jpg</id>
		<title>File:Orig.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/File:Orig.jpg"/>
				<updated>2007-02-08T01:37:06Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: Original image before PTAverage&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Original image before PTAverage&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Build_pano12_from_sourcecode_MSVC</id>
		<title>Build pano12 from sourcecode MSVC</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Build_pano12_from_sourcecode_MSVC"/>
				<updated>2006-12-15T05:43:09Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Building panotools for Windows using Microsoft Visual Studio =&lt;br /&gt;
&lt;br /&gt;
Pano13 and its helper applications can be build using Microsoft Visual Studio.&lt;br /&gt;
For the following instructions, Visual Studio .NET 2003 was used. A free version of Visual Studio 2005 is available on http://msdn.microsoft.com/vstudio/express/ if using this version to build panotools you also need Microsoft® Windows Server 2003 Platform SDK [http://www.microsoft.com/downloads/details.aspx?FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&amp;amp;displaylang=en#filelist   msdn.microsoft.com] To configure the Visual Studio 2005 and platform SDK see [http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/ msdn.microsoft.com]&lt;br /&gt;
&lt;br /&gt;
== Installing required dependencies ==&lt;br /&gt;
Building panotools requires some external libraries, such as libz, libtiff, libpng and libjpeg. Compiling them all by hand is quite cumbersome, an easier way is to download a wxWidgets source package and compile that. Note that wxWidgets itself is not required by panotools, we just use it because of the bundled libraries.&lt;br /&gt;
&lt;br /&gt;
=== Compiling wxWidgets ===&lt;br /&gt;
&lt;br /&gt;
Download the wxWidgets source archive for Win32 (wxMSW) from [http://wxwidgets.org/downloads/ wxwidgets.org/downloads], and extract it to some folder on your harddrive. Create an environment variable named WXWIDGETS_HOME that points to the wxWidgets-xxxx directory, for example C:\source\wxWidgets-2.8.0 To do this, right click on '''My Computer''', select '''Properties''', switch to the '''Extended''' or '''Advanced''' tab, press the '''Environment Variables''' button and create a new enviroment variable with the proper title and locaction&lt;br /&gt;
&lt;br /&gt;
Start the MSVC command line shell (from the startmenu, Visual Studio, Tools, Command prompt), and change the directory to the wxWidgets directory:&lt;br /&gt;
&lt;br /&gt;
  cd '''wxWidgets folder'''&lt;br /&gt;
  cd build\msw&lt;br /&gt;
  nmake -f makefile.vc BUILD=release UNICODE=0 SHARED=0 RUNTIME_LIBS=static&lt;br /&gt;
&lt;br /&gt;
After some time, building will be finished.&lt;br /&gt;
&lt;br /&gt;
=== Install Java SDK ===&lt;br /&gt;
&lt;br /&gt;
Download and install the Java SDK from [http://www.sun.com/download/ sun.com/download], and create an environment variable JDK_HOME that points to the root directory of the JDK (most likely C:\Program Files\j2sdk1.5 or similar)&lt;br /&gt;
&lt;br /&gt;
=== Download and install panotools ===&lt;br /&gt;
&lt;br /&gt;
Get the sourcecode from the subversion repository, or download the latest pano13 source package http://sourceforge.net/projects/panotools/ Open the libpano.sln file, and select the Release configuration in the toolbar. Press F7 to build the panotools programs.&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Build_pano12_from_sourcecode_MSVC</id>
		<title>Build pano12 from sourcecode MSVC</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Build_pano12_from_sourcecode_MSVC"/>
				<updated>2006-12-15T03:59:04Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Building panotools for Windows using Microsoft Visual Studio =&lt;br /&gt;
&lt;br /&gt;
Pano13 and its helper applications can be build using Microsoft Visual Studio.&lt;br /&gt;
For the following instructions, Visual Studio .NET 2003 was used. A free version of Visual Studio 2005 is available on http://msdn.microsoft.com/vstudio/express/ it is probably possible to build panotools using this version as well. &lt;br /&gt;
&lt;br /&gt;
== Installing required dependencies ==&lt;br /&gt;
Building panotools requires some external libraries, such as libz, libtiff, libpng and libjpeg. Compiling them all by hand is quite cumbersome, an easier way is to download a wxWidgets source package and compile that. Note that wxWidgets itself is not required by panotools, we just use it because of the bundled libraries.&lt;br /&gt;
&lt;br /&gt;
=== Compiling wxWidgets ===&lt;br /&gt;
&lt;br /&gt;
Download the wxWidgets source archive for Win32 (wxMSW) from [http://wxwidgets.org/downloads/], and extract it to some folder on your harddrive. Create an environment variable named WXWIDGETS_HOME that points to the wxWidgets-xxxx directory, for example C:\source\wxWidgets-2.8.0 To do this, right click on '''My Computer''', select '''Properties''', switch to the '''Extended''' or '''Advanced''' tab, press the '''Environment Variables''' button and create a new enviroment variable with the proper title and locaction&lt;br /&gt;
&lt;br /&gt;
Start the MSVC command line shell (from the startmenu, Visual Studio, Tools, Command prompt), and change the directory to the wxWidgets directory:&lt;br /&gt;
&lt;br /&gt;
  cd '''wxWidgets folder'''&lt;br /&gt;
  cd build\msw&lt;br /&gt;
  nmake -f makefile.vc BUILD=release UNICODE=0 SHARED=0 RUNTIME_LIBS=static&lt;br /&gt;
&lt;br /&gt;
After some time, building will be finished.&lt;br /&gt;
&lt;br /&gt;
=== Install Java SDK ===&lt;br /&gt;
&lt;br /&gt;
Download and install the Java SDK from [http://www.sun.com/download/], and create an environment variable JDK_HOME that points to the root directory of the JDK (most likely C:\Program Files\j2sdk1.5 or similar)&lt;br /&gt;
&lt;br /&gt;
=== Download and install panotools ===&lt;br /&gt;
&lt;br /&gt;
Get the sourcecode from the subversion repository, or download the latest pano13 source package[http://sourceforge.net/projects/panotools/]. Open the libpano.sln file, and select the Release configuration in the toolbar. Press F7 to build the panotools programs.&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Build_pano12_from_sourcecode_MSVC</id>
		<title>Build pano12 from sourcecode MSVC</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Build_pano12_from_sourcecode_MSVC"/>
				<updated>2006-12-15T03:58:26Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Building panotools for Windows using Microsoft Visual Studio =&lt;br /&gt;
&lt;br /&gt;
Pano13 and its helper applications can be build using Microsoft Visual Studio.&lt;br /&gt;
For the following instructions, Visual Studio .NET 2003 was used. A free version of Visual Studio 2005 is available on http://msdn.microsoft.com/vstudio/express/ it is probably possible to build panotools using this version as well. &lt;br /&gt;
&lt;br /&gt;
== Installing required dependencies ==&lt;br /&gt;
Building panotools requires some external libraries, such as libz, libtiff, libpng and libjpeg. Compiling them all by hand is quite cumbersome, an easier way is to download a wxWidgets source package and compile that. Note that wxWidgets itself is not required by panotools, we just use it because of the bundled libraries.&lt;br /&gt;
&lt;br /&gt;
=== Compiling wxWidgets ===&lt;br /&gt;
&lt;br /&gt;
Download the wxWidgets source archive for Win32 (wxMSW) from [http://wxwidgets.org/downloads/], and extract it to some folder on your harddrive. Create an environment variable named WXWIDGETS_HOME that points to the wxWidgets-xxxx directory, for example C:\source\wxWidgets-2.8.0 To do this, right click on '''My Computer''', select '''Properties''', switch to the '''Extended''' or '''Advanced''' tab, press the '''Environment Variables''' button and create a new enviroment variable with the proper title and locaction&lt;br /&gt;
&lt;br /&gt;
Start the MSVC command line shell (from the startmenu, Visual Studio, Tools, Command prompt), and change the directory to the wxWidgets directory:&lt;br /&gt;
&lt;br /&gt;
  cd '''wxWidgets folder'''&lt;br /&gt;
  cd build\msw&lt;br /&gt;
  nmake -f makefile.vc BUILD=release UNICODE=0 SHARED=0 RUNTIME_LIBS=static&lt;br /&gt;
&lt;br /&gt;
After some time, building will be finished.&lt;br /&gt;
&lt;br /&gt;
=== Install Java SDK ===&lt;br /&gt;
&lt;br /&gt;
Download and install the Java SDK from [http://www.sun.com/download/], and create an environment variable JDK_HOME that points to the root directory of the JDK (most likely C:\Program Files\j2sdk1.5 or similar)&lt;br /&gt;
&lt;br /&gt;
=== Download and install panotools ===&lt;br /&gt;
&lt;br /&gt;
Get the sourcecode from the subversion repository, or download the latest pano13 source package[https://sourceforge.net/projects/panotools/]. Open the libpano.sln file, and select the Release configuration in the toolbar. Press F7 to build the panotools programs.&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Build_pano12_from_sourcecode_MSVC</id>
		<title>Build pano12 from sourcecode MSVC</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Build_pano12_from_sourcecode_MSVC"/>
				<updated>2006-12-15T03:51:43Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Building panotools for Windows using Microsoft Visual Studio =&lt;br /&gt;
&lt;br /&gt;
Pano13 and its helper applications can be build using Microsoft Visual Studio.&lt;br /&gt;
For the following instructions, Visual Studio .NET 2003 was used. A free version of Visual Studio 2005 is available on http://msdn.microsoft.com/vstudio/express/ it is probably possible to build panotools using this version as well. &lt;br /&gt;
&lt;br /&gt;
== Installing required dependencies ==&lt;br /&gt;
Building panotools requires some external libraries, such as libz, libtiff, libpng and libjpeg. Compiling them all by hand is quite cumbersome, an easier way is to download a wxWidgets source package and compile that. Note that wxWidgets itself is not required by panotools, we just use it because of the bundled libraries.&lt;br /&gt;
&lt;br /&gt;
=== Compiling wxWidgets ===&lt;br /&gt;
&lt;br /&gt;
Download the wxWidgets source archive for Win32 (wxMSW) from [http://wxwidgets.org/downloads/], and extract it to some folder on your harddrive. Create an environment variable named WXWIDGETS_HOME that points to the wxWidgets-xxxx directory, for example C:\source\wxWidgets-2.8.0 To do this, right click on '''My Computer''', select '''Properties''', switch to the '''Extended''' or '''Advanced''' tab, press the '''Environment Variables''' button and create a new enviroment variable with the proper title and locaction&lt;br /&gt;
&lt;br /&gt;
Start the MSVC command line shell (from the startmenu, Visual Studio, Tools, Command prompt), and change the directory to the wxWidgets directory:&lt;br /&gt;
&lt;br /&gt;
  cd '''wxWidgets folder'''&lt;br /&gt;
  cd build\msw&lt;br /&gt;
  nmake -f makefile.vc BUILD=release UNICODE=0 SHARED=0 RUNTIME_LIBS=static&lt;br /&gt;
&lt;br /&gt;
After some time, building will be finished.&lt;br /&gt;
&lt;br /&gt;
=== Install Java SDK ===&lt;br /&gt;
&lt;br /&gt;
Download and install the Java SDK from [http://www.sun.com/download/], and create an environment variable JDK_HOME that points to the root directory of the JDK (most likely C:\Program Files\j2sdk1.5 or similar)&lt;br /&gt;
&lt;br /&gt;
=== Download and install panotools ===&lt;br /&gt;
&lt;br /&gt;
Get the sourcecode from the subversion repository, or download the latest pano13 source package. Open the libpano.sln file, and select the Release configuration in the toolbar. Press F7 to build the panotools programs.&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	<entry>
		<id>http://wiki.panotools.org/Build_pano12_from_sourcecode_MSVC</id>
		<title>Build pano12 from sourcecode MSVC</title>
		<link rel="alternate" type="text/html" href="http://wiki.panotools.org/Build_pano12_from_sourcecode_MSVC"/>
				<updated>2006-12-15T02:53:20Z</updated>
		
		<summary type="html">&lt;p&gt;Jwatters: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Building panotools for Windows using Microsoft Visual Studio =&lt;br /&gt;
&lt;br /&gt;
Pano13 and its helper applications can be build using Microsoft Visual Studio.&lt;br /&gt;
For the following instructions, Visual Studio .NET 2003 was used. A free version of Visual Studio 2005 is available on http://msdn.microsoft.com/vstudio/express/ it is probably possible to build panotools using this version as well. &lt;br /&gt;
&lt;br /&gt;
== Installing required dependencies ==&lt;br /&gt;
Building panotools requires some external libraries, such as libz, libtiff, libpng and libjpeg. Compiling them all by hand is quite cumbersome, an easier way is to download a wxWidgets source package and compile that. Note that wxWidgets itself is not required by panotools, we just use it because of the bundled libraries.&lt;br /&gt;
&lt;br /&gt;
=== Compiling wxWidgets ===&lt;br /&gt;
&lt;br /&gt;
Download the wxWidgets source archive for Win32 (wxMSW) from [http://wxwidgets.org/downloads/], and extract it to some folder on your harddrive. Create an environment variable named WXWIDGETS_HOME that points to the wxWidgets-xxxx directory, for example C:\source\wxWidgets-2.8.0 To do this, right click on '''My Computer''', select '''Properties''', switch to the '''Extended''' or '''Advanced''' tab, press the '''Environment Variables''' button and create a new enviroment variable with the proper title and locaction&lt;br /&gt;
&lt;br /&gt;
Start the MSVC command line shell (from the startmenu, Visual Studio, Tools, Command prompt), and change the directory to the wxWidgets directory:&lt;br /&gt;
&lt;br /&gt;
  cd '''wxWidgets folder'''&lt;br /&gt;
  cd build\msw&lt;br /&gt;
  nmake -f makefile.vc BUILD=release UNICODE=0 SHARED=0 RUNTIME_LIBS=static&lt;br /&gt;
&lt;br /&gt;
After some time, building will be finished.&lt;br /&gt;
&lt;br /&gt;
=== Install Java SDK ===&lt;br /&gt;
&lt;br /&gt;
Download and install the Java SDK, and create an environment variable JDK_HOME that points to the root directory of the JDK (most likely C:\Program Files\j2sdk1.5 or similar)&lt;br /&gt;
&lt;br /&gt;
=== Download and install panotools ===&lt;br /&gt;
&lt;br /&gt;
Get the sourcecode from the subversion repository, or download the latest pano13 source package. Open the libpano.sln file, and select the Release configuration in the toolbar. Press F7 to build the panotools programs&lt;/div&gt;</summary>
		<author><name>Jwatters</name></author>	</entry>

	</feed>