Outlines in Panorama Preview?

Pablo d'Angelo pablo at mathematik.uni-ulm.de
Mon Oct 27 07:45:22 GMT 2003


On Sun, 26 Oct 2003, Ed Halley wrote:

> 
> Yeah, I've had only passing experience with wxWindows previously, and
> only on Windows.  Now I'm trying to remain Windows-free but have a
> learning curve.  I'm digging through Bruno's .src.rpm from 2003-10-14
> now, looking for some "get wet" tasks.

Do you have an account on sourceforge? Then I can add you to the
developers team.

> The first thing I tried tonight was in src/hugin/RunOptimizerFrame.cpp,
> hoping that I could just Layout(); Fit(); on each iteration, so the
> results are visible.  But that doesn't work, probably needs to go
> through an event pump somewhere once before Fit() shows up.

Hmm, maybe a wxYield() could help there?

> Now, about your optimizer interface ideas.  I know it's not your
> priority, so maybe I can do the brainstorming and eventually help out
> more than with ascii diagrams.  Got any notes?  Since I haven't done
> thousands of panos, help me understand what the user wants to
> accomplish.

I think there should be a completely automatic mode, with just an optimize
button, which would apply several optimization steps after each other. I
especially like the way it is done in PTAssembler.

> It seems to me that the ideal case is "optimize almost everything", and
> there are a few things you might want to avoid optimizing.  So what are
> the few things that need more than the following interface?  The below
> is my pseudo-gui:
> 
>   +--------------------------------------------------+
>   |                                                  |
>   |  Optimizer Druid                                 |
>   |                                                  |
>   |  Images [ came straight from a digital camera ]. |
>   |  Anchor [ the Pitch and Roll ] of [ Image 2 ].   |
>   |  Optimize [ everything else ].                   |
>   |                                                  |
>   |                         [ Advanced Options >> ]  |
>   |                                                  |
>   +--------------------------------------------------+

Optmisation is a process that probably needs to be done a few time, so using
a wizard like interface is a bit of a hassle, I suspect. I'd keep the
Optimizer tab, but with something like:

+--------------------------------------------------------------+
|  what to optimize: [ automatic ]  [ Run optimizer button]    |
|                                                              |
| ------------------------------------------------------------ |
|                                                              |
| advanced settings with tons of checkmarks                    |
|                                                              |
+--------------------------------------------------------------+

I'd move the "images came straight from camera" button to the Lens Tab,
and the Anchor to the Images tab. (with an interface to set orientation
for the anchor image).

the automatic mode would run several optimisation steps after another.
other modes could include:
- orientation
- orientation + hfov
- orientation + some lens distortion
- orientation + all lens settings.

I'd like to be able to select these, and have the checkmarks updated, so
that I can change something if I need to.

> Similarly, the pano options tab can/should get simpler:  they should
> pick from a couple of thumbnails what KIND of projection they want, and
> then options on whether to correct vignetting or whatnot. 

Good idea. unfortunately doing these nice graphical things takes some
time. Especially if custom control have to be written etc.

>  They
> shouldn't have to keep pushing the 'estimate' button or the 'calc'
> button to get good results.  Let the user view advanced options if they
> like, especially since that's all done.  But make the 98% case very
> simple.

So you would always update the hfov/vfov and width of the panorama with the
calculated values? at least for hfov/vfov this might not be expected. Also,
If I enter an output width, I don't want it to be changed, even if I move
some pictures around. Well probably thats true for the "expert mode"...

On the technical side: Its probably a bit of an hassle to dynamically
change the tabs based on "advanced >>" buttons, because most of the
layout is done using the xml ressource system of wxWindows.

> The trick to GUI design is to think in the terms which your user already
> knows, and to expose only the things which matter to their goals and
> results.

Yep, youre right. they key is to abstract the technical details (like wich
parameters should be linked) into a nice interface that only mentions
things the user is familiar with.

Cool, now we also have somebody with some GUI design experience!

ciao
  Pablo
--
http://wurm.wohnheim.uni-ulm.de/~redman/
Please use PGP


More information about the ptX mailing list