You were waiting for this release, I know ! It has taken us a long time to get to this point. Now I am going to present you with the next Autopano engine 2.5. This is a massive update.
First, I want to give you a quick text presentation of the Autopano engine itself. BTW : I will spend some time to create some video that will highlight some of the new feature.
Autopano Engine is separated into 3 main parts. We gave each of them names ( better for communicating ). Here are the 3 parts : - Kolor Autopano Synapse : the detection engine which detects keypoints, matches them, and then regroups everything into logical panoramas - Kolor Autopano Neurone : the optimization engine for each panorama which takes results of the 'synapse' and then calculates cameras and color correction - Kolor Autopano Cortex : the rendering engine that creates the final panorama ( rendering / blending / ghost detection / fusion, etc ).
We worked a lot on every section of this v2.5 engine. Let's take a look at each part.
Synapse : improvements and new features
In this section, you will have 3 new features.
* The matching component is now multi-threaded :
The detection stage is now fully multi-threaded. This seems to be a small feature, but we spent 3 months working on this component. The multi-threading design has been validated by Intel and results have been measured. The speed boost is minimal for a small panorama, but if you are used to stitching a lot of images, the boost can be impressive.
* Ransac stage improvement :
We added a new setting that gives access to another way of calculating the control point between 2 images. This new mode called 'full 3d' gives far more control points on a short focal than the old method. In some cases, improvements are real, but it's useless for a long focal. For the moment, this part is still experimental and needs improvement. We decided to keep it because in some cases it's really nice.
* Auto regroup feature :
In the panorama setting, for example, you can have the software automatically regroup images into layers according to their bracket which is a nice feature to have if you are used to bracketing.
Neurone : new features
* Free Nodal Point ability (quite the same as viewpoint correction in PtGui ). This feature is for Autopano Giga only.
When we decided to add Free Nodal Point Ability to our engine, we wanted it to be automatic. Normally when doing that, you cannot rely on automatically created control points. You need to enter them manually. Again, we think that an automatic solution that works should be created first. If it solves 90% of the cases, it's good. This is our goal which is why we have the new ransac stage 'full 3d'.
WARNING : this mode use a lot the optimizer. It can really takes time. Don't use this mode yet with more than 40 images. We still need to work on the mathematical part to optimize the optimizer so that it could be applied to a project up to 100/150 images.
We also made another change. And not a small one !
* New color correction system
The color correction engine has been updated. Most of the time it does a better job, works better in conjunction with HDR, and is far more user friendly. We removed the anchor system and replaced it with something that has a meaning : what do you want to optimize on this image? Nothing, exposure, color, or color and exposure. Simple and easy to understand.
You may be disturbed at first with this new color engine. It's still being fine-tuned and not everything is working directly, but I'm sure that in the end, it will be much better than the previous.
*WARNING : We found out that when it doesn't work, it's currently broken. Found out that after the release.
BTW : You still have the same flexibility in choosing which image is the reference ( the one which should not be corrected ). Also, the system seems to behave quite the same. Nevertheless, the underground math has really changed.
Cortex : the new rendering engine
This is the big part. After the issue with smartblend memory manager, we decided to go with our own system. It was not an easy decision to make because recreating a rendering engine from scratch is a huge amount of work. This simple fact explains delays in all Autopano releases. It was well worth the wait.
So what was the goal behind this complete rewrite of the engine ?
- The memory manager design should be perfect and should not rely on anything besides the OS - An anti-ghost which should be configurable - Integrated support for HDR ( fusion or merge ) - Better support of multi-core everywhere - Ready for GPU integration ( OpenCL based )
What do we have in this 2.5.0 alpha release ? * The new engine is integrated ( you can see that in the rendering dialog box ) * A lot of new options to tune this engine * An option to remove alpha channel in any format ( it corrects the TIFF issue with capture one / light room support ) * Fusion blending for direct creation of a panorama from bracketed series * Hdr merge to create hdr files * Anti ghost on multi-band * Anti ghost on hdr merging ( a different kind of anti-ghost which is not as good as the first one ) * We revamped the outputs, so you can choose what to output ( just the panorama, the groups, the images, everything, just one, etc ) * And gigapixel support : We did Paris-26-Gigapixels with anti-ghost on this engine ( several days of rendering but it worked ! )
You will have more details in the next coming video about how to use this engine.
General Interface - new features
Let's have a look at what is new in global settings :
GENERAL TAB -----------
Here you have many changes due to the integration of the new rendering engine :
- you can select one or several temporary folders ( by default just one, => hit on '...' button and you will have a new one ).
- New memory management Now you only have one memory setting that is based on the available free memory at the launch of the software. By default, we reserve 66% of that for source images cache or for rendering cache.
- Processor handling new options : * mono core or multicore engine ( when multicore is enabled, you can set the number of core you want to use ). * you also have the CPU string so the processor will be described directly in the interface
IMAGE TAB ---------
Nothing new here !
DETECTION TAB -------------
A new option appeared in the control point creation process. It's called Ransac Model. It will change the way the control point is validated after the sift detection. You can have the standard model like in the previous version of autopano ( similarity ) or a new model called "Full 3d". In this mode, you will detect more control points in complicated cases and it will allow you to detect control points with free nodal point images. Advice : - use Similarity everywhere because it's much much faster - use Full3d when having strong differences with the nodal point or if you have a really short rectilinear lens ( 15mm for example ). You'll have more control points and the panorama will be better even if you don't use 'free nodal point' optimization.
OPTIMISATION TAB ----------------
Here you have the new option : "Free Nodal Point". It does what it says.
PANORAMA TAB ------------
Some improvements here : - color correction can be tuned with a new option where you can choose whether you would like color correction applied by layer or not - You can select what to optimize in color
Totally new : - You can choose to automatically create groups at detection ( either by bracket, speed, etc ). This part will be improved further by the addition of an automatic mode that will decide alone what to do.
RENDERING TAB -------------
This dialog box has changed a lot.
Algorithms : -------------
The new rendering engine settings. You have 4 presets you can use that change the internal settings :
- Multi-band => a simple multi-band blend of the image BTW : this one is different than the old multi-band of the 2.0 engine. It's a full multi-band which is used for really big panoramas. It's slower than the old one but it is superior in quality. - Smartblend : We decided to keep that name for the moment, but it will probably be renamed anti-ghost - Bracket : when you need to make a panorama from several exposures - HDR : when doing an HDR file from LDR sources
If you want to learn about the internal settings, now you'll need to hit "Show Advanced Options"
* Blending algorithm : linear or multi-band
If you choose multi-band, you have a slider with some settings. They correspond to the number of pyramid levels you want to do with that multi-band. 0 => max number of levels 1 and over => say 1 level, 2 levels only, etc. -1 and under => means I want all levels except the last 1 or 2, etc
* diamond weighting : a diamond weight on the alpha gives more weight to the pixel in the middle of a picture compared to a pixel near the corner
* exposure fusion : each pixel has a weight according to its exposure
* remove moving objects : the anti-ghost system
* remove bracket ghosts : another anti-ghost system for HDR merging
Format : --------
You have 2 news options here.
Embed all output => if the format allows it, everything will be embedded in the format ( example on PSD : everything will be in a single file : panorama, layers, images ).
Remove alpha channel => this doesn't output the alpha channel. Useful for a TIFF format for example so that the rendered panorama can be opened in light room.
Output : --------
3 check boxes : * Panorama : if you want the panorama to be written ( you just need projected individual images, you don't need this. But most of the time it should be checked. ) * Layers : if you have more than one layer, you can have the individual layers * Pictures : projected individual images
Manual Control Point Editor
I know some of you have been waiting for this feature for a long time. Now it's here.
See the second button 'add cp' in the control point editor. The behavior is quite the same as what is standard in that area.
Batch Rendering Window
The batch rendering dialog doesn't have a real time preview yet. We don't know if we really need to spend time getting that feature back because it's just visual. So for the moment, we removed it.
Something new here which is really useful : statistics. When a rendering is finished, you can click on the project to select it. After the project details, there will be statistics. Here's an example of such output :
[pre] C:/Users/MR_JENNY/Desktop\[Group 1]-DSC_1391_DSC_1509-119 images.jpg 119 images Size: 12230 x 2756 FOV: 91.54 x 26.02 RMS: 3.01 Lens: Standard Projection: Rectilinear Color: LDR
Rendering statistics: Total time: 75.629 s Initialization time: 51.8823 ms Wrapping time: 15.2642 s Cutting time: 14.6873 s Blending time: 44.904 s Saving time: 1.77077 s Temporary data read/written: 874 MB/891 MB [/pre]
You can see the total rendering time for this panorama : 75s and details. You can also see how much time was spent wrapping, cutting ( anti-ghost ), blending and writing ( can be long too ). We also made the average written or read data from the rendering cache public. We found out that rendering speed really depends on whether or not everything fits in the memory.
Here is an early estimation of the rendering speed. On 3 standard panoramas we often use : "tournette" panorama : * 2.0.9 : 26s * 2.5.0 : 16s => 1.6 x speed up "bill et boule" panorama : * 2.0.9 : 135s * 2.5.0 : 52s => 2.5 x speed up "curial decentre" panorama : * 2.0.9 : 205s * 2.5.0 : 128s => 1.6 x speed up
I hope you'll see that too on your side.
The option 'advanced distortion' in the optimize tab doesn't exist anymore. It's now always activated with fisheye.
You will probably notice that I quite never talked about HDR in this serie. That's normal, because theses feature will be disclosed in v2.5 beta 1 when the integration of every feature needed for HDR will be done. HDR is not simple and most of the job will be to create a good documentation on how to use the new engine for such kind of job. Yes, in fact, quite everything we still need to do and assemble the right kind of HDR type of job and explain to you by video how to do them with the current engine. So this part will come with beta1.
* Issue 116 : the new color correction system doesn't work in this system. We found out that issue after the compilation unfortunately * Issue 115 : Do no use the free nodal point on big project ( < 40 images ) * Issue 114 : In the rendered panorama of a free nodal point project, some unattended part can appears ( images arc which doesn't belong to anything ) * Issue 113 : When the new anti-ghost system decide to cut near an image edge, some artifact can happen * Issue 112 : Some unexplained yet crash during rendering
"Free nodal point" means you can create panorama without the need to care of the nodal point itself. So you can move yourself while shooting. Let's be really accurate here, you won't be able to create a perfect 360x180 panorama if you are not at the nodal point, but planes on the scene can be stitched with that feature. Of course, it won't compensate for parallax issue. It can be applied to several kind of application : * wall shooting while moving along it * aerial shooting ( everything about cartography in fact ) * hand free nadir
Ooooh, I see! Will that feature improve results with handheld panoramas? Having in mind that 99% of our work is small handheld panos and small aerial panos (KAP or BAP), that may be the most important thing in 2.5 for me personally.
Having never had any big problem with rendering or crashes, the most "problematic" part of my work with APP is the fact that almost all panos are with "free nodal point".
Shouldn't the four videos be viewed and listen to? The first one runs fine and loud on my iMac with QuickTime, VLC or Windows Media Reader (via Windows XP), but the three last ones on the list above are soundless:-( Being not versed in video technics, I cannot determine what is the cause but when I inspect the tracks with QuickTime Pro, I see that there is a soundtrack on each movies, but only the first (with sound) has 2 AAC 22050 MHz channels whilst the flawed movies have a single AAC 22050 MHz channel.
There will be a linux version too, of course, don't worry. We tried it already but didn't get time to create the .DEB ( we changed the build workflow and we needed more time to script that part ). Linux is really just behind, no issue here.
Great improvements, special the “free nodal point” looks very interesting but what specific may we expect from this setting.
I mostly make pano's from hand and until now the results with APP are very good.
At this moment I make linear panorama's by moving the camera parallel to the subject. This goes well with APP as long as there is, little or no depth in the subject (and thus no parallax) and I set the lens to 2000/3000 mm.
What improvements gives the new setting, less distortion, less sensible for parallax, so more “depth” is allowed ?
I try to find the limits of APP, f.i. moving subjects, moving subject with 400 mm lens, pano's made from moving vehicles, linear pano's. Etc.
For this I tested about 12 programs in order to find out that APP gives most of the time usable results
I am surprised what APP already now can do with this (sometimes horrible) pano's and every improvement for difficult situations is fantastic
Alas, wine only runs 32 bit windows programs so while I could run it on wine (or use my 32 bit windows systems though they don't have my 4 megapixel 30 inch monitor) it would be much more memory limited. I am already running into a lot of problems using APP on my 8gb system and looking to upgrade it to 12gb or 16gb. But I also have a lot of panos that I just can't stitch in APP 2 because it refuses to find control points no matter what I do, and manual is the only way to do it. So I'm stuck between an undersea rock (the kind of thing it won't find CPs for though the eye finds them easily) and a hard place.