GUI complexity

Bruno Postle bruno at postle.net
Thu Apr 24 12:38:48 BST 2003


On Thu 24-Apr-2003 at 01:42:11AM +0200, Pablo d'Angelo wrote:
> On Wed, 23 Apr 2003, Bruno Postle wrote:
> >
> > I think that maybe those mock-ups were a bit ambitious.  Possibly
> > they exposed too much of the (very complex) ptools functionality?
> 
> Yep, exactly what I think. When I want create a panorama, I'm not
> primarily interested how parameter c distorts the image, or want to
> tune it. I have calibrated my lens before and set a,b and c once and
> for all (maybe there can be multiple settings for different focal
> lengths of a lens, since a,b,c (and I guess d and e too) change with
> the focal length.

It's worse than that; a, b & c vary depending on the focus distance
too.

This is something for advanced users, who may need to optimise a, b
& c for every panorama - If you are not building high-resolution 360
degree spherical panoramas, then you can generally ignore these
effects.

(A slight digression, if you want to play with these a, b & c
parameters, it's not difficult with a bit of perl:

    http://bugbear.blackfish.org.uk/~bruno/imager-test/

..quite fast too)

> for panorama tools I can think of the following:
> 
> 1. add the images. have the program look at EXIF data, or specify an
>    lens by hand, image distortion parameters a,b,c (and d,e if the
>    image comes straight from the digicam) are loaded from a known
>    database, if the entry is there.

A suggestion for this database: make it one-file per camera, so we
can aggregate a collection of cameras simply by dropping files into
a directory.

>    btw. does anyone know where the shear distortion (f,g in newer
>    PanoTools) is useful, where does the error it tries to correct come
>    from?

This is for scanned photos.

> 2. crop the image (optional, I never needed this so far).

Scanned photos again, especially with negative/transparency
scanners, the crop settings are likely to be the same for all
pictures (You could just make a decision to only support digital
cameras :-)

> 3. select an "anchor" image, and set its position (like in
>    PTAssembler). this position should not be moved by the optimizer.
>    This is very useful, especially since I take many pics free hand,
>    and they usually have some rotation and are not shot completely
>    level.

True, though the H & V control point parameters are very important
for getting everything level - In which case you are unlikely to
want to fix all of the roll, pitch & yaw parameters for the anchor
image.

(With architectural photography, you often want to optimise roll,
pitch & yaw for every image)

> 3. select control points (unfortunately needed I guess), but as much
>    help as possible should be offered. This is the point where I
>    really want to go a step further than the other GUI's. 

Ptopengui has a nice refining tool, though the need to rotate the
samples should be unnecessary - Ptools should be able to extract the
two comparision images given rough estimates of all the parameters.

I think a lot of this could be completely automated, perhaps even
selection of control points, though the user would have to align
everything by eye first.

> 6. set output panorama parameters (if we can display the panorama
>    or a preview inside the gui, we might be able to give the user the
>    ability to select a crop region for the final image etc.)

Bear in mind that PTOptimizer optimises images _into_ the output
format, so you have to select output parameters before you can
optimize.

Also, once all the input image parameters are decided, this output
format is irrelevant, you could "render" into any number of
different output formats.

> As a general rule I'd like have as little buttons on the gui as
> possible. for example I never understood the Add button for control
> points. Just click into both images and you got a control point.

It's useful to have both add and modify; though I agree with you,
simply clicking on points should be sufficient.

BTW, I like the different colours for control points, it makes it
easy to visualise what is going on.

-- 
Bruno


More information about the ptX mailing list