Changes between Initial Version and Version 1 of UserGuide2.x


Ignore:
Timestamp:
Mar 16, 2009, 7:55:06 AM (16 years ago)
Author:
Frédéric
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UserGuide2.x

    v1 v1  
     1= Papywizard User Guide (subversion) =
     2
     3 * [#Usageoverview Usage overview]
     4 * [#Advancedusage Advanced usage]
     5  * [#Mosaicmode Mosaic mode]
     6  * [#Presetmode Preset mode]
     7   * [#Custompresets Custom presets]
     8   * [#Presetconverter Preset converter]
     9  * [#Shootingsequence Shooting sequence]
     10 * [#Cutomization Cutomization]
     11  * [#Stylesheet Style sheet]
     12 * [#Tetheredshooting Tethered shooting]
     13 * [#Referencemanual Reference manual]
     14  * [#Mainwindow Main window]
     15  * [#Configurationdialog Configuration dialog]
     16   * [#Shootingtab Shooting tab]
     17   * [#Mosaictab Mosaic tab]
     18   * [#Cameratab Camera tab]
     19   * [#Lenstab Lens tab]
     20   * [#Hardwaretab Hardware tab]
     21   * [#Datatab Data tab]
     22   * [#Timertab Timer tab]
     23   * [#Misctab Misc tab]
     24  * [#Bluetoothdialog Bluetooth dialog]
     25  * [#Shootdialog Shoot dialog]
     26  * [#Logdialog Log dialog]
     27 * [#Keyboardshortcuts Keyboard shortcuts]
     28
     29''This documentation refers to the stable release of branch 2.x (2.0.0) of Papywizard; documentation of the developpement branch can be found [UserGuideSvn here].''
     30
     31== Usage overview ==
     32
     33Papywizard is very easy to use, and I hope the GUI is intuitive enough.
     34
     35The first thing to do is to edit the configuration, to reflect you camera/lens/head/hardware config. Basic settings are the delay to wait after moving (to let the head stop shaking), the delay to wait while shooting (camera Tv value), and the number of pictures to take at each position (bracketing). See below for specific mode settings.
     36
     37Second, you need to connect to the hardware (Menu ''Hardware > Connect''). If you use the bluetooth driver (default config), you need to enter the correct address of your adapter. Alternatively, you can get a list of all available bluetooth devices arround, and select the correct one.
     38
     39Then, just move the head either using the big GUI arrows, or using the keys shortcuts (see below), and set the start/end positions.
     40
     41Once it is done, just open the shooting dialog and launch the entire process. That's it!
     42
     43== Advanced usage ==
     44
     45Papywizard has now 2 modes: ''Mosaic'' mode, and ''Preset'' mode. The first one is mainly used for partial panos, and is especially designed for hi-res panos, using a large tele-lens. The second one is designed for full-spherical panos, using a wide-lens or a fisheye.
     46
     47=== Mosaic mode ===
     48
     49The mosaic mode computations are based on the following parameters:
     50
     51 * minimum overlap
     52 * camera orientation
     53 * sensor coef. and ratio
     54 * focal lens
     55
     56So, these settings must exactly reflect your configuration.
     57
     58This mode also needs to know start/end positions, which are two opposite corners of the pano you want to shoot. There are 3 ways to give these positions:
     59
     60 * set them from the current position
     61 * give the total field of view for both directions; start/end positions will be automatically computed arround the ''Home'' position (yaw=0, pitch=0)
     62 * give the number of pictures to take for both directions; start/end positions will also be automatically computed arround the ''Home'' position (yaw=0, pitch=0)
     63
     64It does not matter which corner you use for start or end, but it will influence the direction the pano will be shot. Note that, depending of the settings, Papywizard can start shooting from the start position, or from the end position. This is usefull to avoid the head to go back to the opposite corner before shooting (which takes time and uses batteries).
     65
     66It is also possible to choose the initial shooting direction. Using ''yaw'' will shoot row by row; using ''pitch'' will shoot column by column. Same, the head can go back to the begining of the row/column before shooting the next one (see [TipsAndTricks#Shootingdirection Tips and tricks]).
     67
     68=== Preset mode ===
     69
     70This mode is very simple, and does not use any particular settings; it just shoots at all positions defined in the selected template. The only thing to do is to define the ''home'' position of the head (origin), which will be the reference for the template positions. In case the camera/lens can't be moved in all positions, it is possible to set some limits, to avoid potential colisions (limits are not saved in the current release, so they must be set each time the head is turned on).
     71
     72==== Custom presets ====
     73
     74Some default presets are provided with the software, but it is possible to add your own. For that, you need to create a xml file which describes them. The file must be named '''{{{presets.xml}}}''' and must be in the config directory: '''{{{~/.config/papywizard2/}}}''' on linux, '''{{{/home/user/.config/papywizard2/}}}''' on maemo, and '''{{{C:\Documents and settings\<user>\Application Data\papywizard2\}}}'''¹ on Windows.
     75
     76''¹: you have to configure the Windows Explorater so it shows you ''system'' files and directories.
     77
     78Here is the file structure:
     79
     80{{{
     81#!xml
     82<?xml version="1.0" encoding="utf-8" ?>
     83<papywizard>
     84    <preset name="My custom preset">
     85        <tooltip>
     86            20D + 50mm
     87            12 picts @ +55°
     88            20 picts @ +40°
     89            50 picts @  10°/-10°
     90            20 picts @ -40°
     91            55 picts @ -70°
     92        </tooltip>
     93        <shoot>
     94            <pict yaw="0." pitch="55." />
     95            <pict yaw="30." pitch="55." />
     96            <pict yaw="60." pitch="55." />
     97            <pict yaw="90." pitch="55." />
     98            ...
     99        </shoot>
     100    </preset>
     101    <preset name="Another custom preset">
     102    ....
     103     </preset>
     104</papywizard>
     105}}}
     106
     107Where:
     108 * {{{<preset> name attribute}}}: name used to present the preset in the GUI
     109 * {{{<tooltip>}}}: information for that preset (shown in the information presets template window)
     110 * {{{<shoot>}}}: list of all positions to shoot, described in {{{yaw/pitch}}} attributes of the {{{<pict>}}} tag (one tag per position)
     111
     112''Note: it is possible to define several presets in the same file.''
     113
     114To save time during shoot, take care of the order of positions. For example, don't ask the head to go back to the begining of the new row, it will take too long; instead, reverse the direction and go back for the next row.
     115
     116You can also import a custom preset file from the ''File'' menu. Note that this file won't be automatically loaded at next startup; this is mainly to test your presets before putting them in your user config. dir.
     117
     118If you add usefull templates, feel free to send them so they could be added as default ones.
     119
     120=== Preset converter ===
     121
     122As all files managed by Papywizard are xml, it is very easy to convert an output data file to a '''{{{presets.xml}}}''' file, using '''XSL transform'''. Here is a [PresetConverter a form] to automatically make such conversion.
     123
     124== Shooting sequence ==
     125
     126It is possible to suspend/resume the shooting sequence using the '''{{{Pause/Resume}}}''' button. Once paused, the shooting sequence can be modified; clicking on any position on the GUI will set the next position to shoot to that new position.
     127
     128''Note: if you are shooting a hi-resolutio pano, there may be too much preview positions on the GUI to easily select one. In this case, just use the 2 button on both sides of the shooting area to rewind/forward the next shooting position. Arrow keys are also binded to these buttons.
     129
     130If the '''{{{manual shooting}}}''' flag is set, the shooting sequence will automatically go to pause mode after each move (before running the camera shutter sequence), and after each camera shutter sequence (before moving to the next position). During the camera shutter sequence, the shutter will be triggered one or more times, depending of the bracketing parameter in the config; no pause will be done inside this sequence.
     131
     132== Cutomization ==
     133
     134=== Style sheet ===
     135
     136Since release 1.9.1, Papywizard can load a user style sheet. This file must be name '''{{{papywizard.css}}}''', and must be located in the config directory.
     137
     138Here is a sample file:
     139
     140{{{
     141#!c
     142QPushButton {
     143    color: red;
     144}
     145}}}
     146
     147''Note: a dedicated page for nice style sheets will soon be created. Feel free to send yours.''
     148
     149== Tethered shooting ==
     150
     151It can be usefull to call an external program to make tethered shooting, instead of using the Merlin/Orion triggering.
     152
     153If a '''{{{shoot.py}}}''' python script is found in the user config. dir, the functions '''{{{mirrorLockup()}}}''' and '''{{{shoot(bracketNumber)}}}''' contained in this script will be called instead of internal ones.
     154
     155Here is a minimalistic example script:
     156
     157{{{
     158#!python
     159import subprocess
     160
     161
     162def mirrorLockup():
     163    """ Lockup the mirror.
     164
     165    @return: error code, stdout, stderr
     166    @rtype: tuple of int, str, str
     167    """
     168
     169    # See shoot() function
     170    return 0, "", ""
     171
     172
     173def shoot(bracketNumber):
     174    """ Shoot.
     175
     176    @param bracketNumber: number of the current bracket picture
     177    @type bracketNumber: int
     178
     179    @return: error code, stdout, stderr
     180    @rtype: tuple of int, str, str
     181    """
     182
     183    # Launch external command
     184    args = ["gphoto2", "--capture-image"]
     185    p = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
     186
     187    # Wait end of execution
     188    stdout, stderr = p.communicate()
     189
     190    return p.returncode, stdout, stderr
     191}}}
     192
     193The external program name (here, '''"gphoto2"''') must be the first element of the '''{{{args}}}''' list; optional params (here '''"--capture-image"''') can be given as additional elements of the list. If you want to give the '''{{{bracketNumber}}}''' value, use '''{{{"%d" % bracketNumber}}}''' (or '''{{{str(bracketNumber)}}}''') as param value.
     194
     195Under Windows, the full path of the program must be given, like '''{{{"C:\\Program Files\\notepad.exe"}}}'''.
     196
     197 * ''Note 1: the tethered program needs to support command-line call.''
     198 * ''Note 2: if a function does not exist, the internal one will be used instead.''
     199
     200More informations about ''subprocess'' module usage can be found here:
     201
     202 * [http://www.python.org/doc/2.5.4/lib/node528.html]
     203 * [http://www.python.org/doc/2.5.4/lib/node532.html]
     204
     205== Reference manual ==
     206
     207=== Main window ===
     208
     209==== Menus ====
     210
     211 * '''File > Quit''': exit from Papywizard
     212 * '''File > Import Preset File...''': Import presets from file
     213 * '''File > Load Style Sheet...''': load style sheet
     214 * '''Hardware > Connect''': connect to the head hardware
     215 * '''Hardware > Set limit...''': set the selected limit to curent position
     216 * '''Hardware > Clear limits''': reset all limits
     217 * '''Hardware > Goto Home...''': goto home position
     218 * '''Hardware > Goto Initial...''': goto inital position (when turned on)
     219 * '''Help > Manual''': open this documentation (network connection needed)
     220 * '''Help > View log...''': open log dialog
     221 * '''Help > About Papywizard''': open the Papywizard about dialog
     222 * '''Help > About Qt''': open the Qt about dialog
     223
     224==== displays ====
     225
     226Mosaic tab:
     227 * '''Start''': start shooting position
     228 * '''End''': end shooting position
     229 * '''Total Fov''': total shooting field of view
     230 * '''Nb picts''': shooting number of pictures
     231 * '''Real overlap''': real shooting overlap
     232 * '''Resolution''': resolution of the pano
     233Preset tab:
     234 * '''Template''':
     235Common:
     236 * '''Position''': current position of the head
     237
     238==== buttons ====
     239
     240 * '''Mosaic/Preset''': switch between mosaic and preset mode
     241Mosaic tab:
     242 * '''Start/Yaw/Pitch''': set the start shooting position from current position (for both, yaw or pitch)
     243 * '''End/Yaw/Pitch''': set the end shooting position from current position (for both, yaw or pitch)
     244 * '''Total fov''': open a dialog to specify the wanted yaw/pitch fov
     245 * '''NB picts''': open a dialog to specify the wanted yaw/pitch nb picts
     246Preset tab:
     247 * '''Template''': template defining all positions
     248 * '''Templates information''': informations on available templates
     249Common:
     250 * '''Left/Right Yaw arrows''': move head on yaw axis
     251 * '''Left/Right pitch arrows''': move head on pitch axis
     252 * '''Set origin''': set the current position as origin (yaw=0.0°, pitch = 0.0°)
     253 * '''Configuration...''': open the config. dialog
     254 * '''Shoot...''': open the shooting dialog
     255
     256==== Status bar ====
     257
     258 * '''Messages'''
     259 * '''Manual speed'''
     260 * '''Connexion status'''
     261
     262=== Configuration dialog ===
     263
     264==== Shooting tab ====
     265
     266 * '''Head orientation''': orientation of the head
     267 * '''Camera orientation''': camera orientation on the head (if combobox is set to ''custom'', real orientation can be given)
     268 * '''Stabilization delay''': delay to wait after the head has stopped, and before shooting, to let the head stablizing
     269
     270==== Mosaic tab ====
     271
     272 * '''Overlap''': minimum wanted overlap
     273 * '''Start from''': start position
     274 * '''Initial direction''': initial moving direction
     275 * '''CR''': if set, go back to the start of the row/columns before starting a new one
     276
     277==== Camera tab ====
     278
     279 * '''Time value''': shooting time. If set to 0, skip shooting sequence
     280 * '''Pulse width (high/low)''': width of the shutter triggering pulse (high level duration, and minimum low level duration between too consecutive shots)
     281 * '''Bracketing''': number of picture to take at each position, and the intent of the bracketing
     282 * '''Sensor (coef/ratio)''': ratio to 24x36 size, width vs height ratio
     283 * '''Sensor resolution''': resolution of the sensor
     284
     285==== Lens tab ====
     286
     287 * '''Type''': type of the lens (''rectilinear'' or ''fisheye'')
     288 * '''Focal''': real focal of the lens (''rectilinear'' only)
     289 * '''Optical multiplier''': optional optical multiplier coef. (''rectilinear'' only)
     290
     291==== Hardware tab ====
     292
     293 * '''Driver''': hardware driver to use ('bluetooth', 'serial', 'ethernet')
     294 * '''BT device address''': bluetooth device address for 'bluetooth' driver
     295 * '''Choose...''': open the bluetooth chooser dialog
     296 * '''Serial port''': serial device port for 'serial' driver (either a int or a string, like {{{COM1}}} or {{{/dev/ttyS0}}})
     297 * '''Ethernet host''': hostname/IP for the 'ethernet' driver
     298 * '''Ethernet port''': port number of the 'ethernet' driver
     299 * '''Auto-connect''': if set, try to automatically connect to the head at startup
     300
     301==== Data tab ====
     302
     303 * '''Data storage dir''': set the directory where data file are written
     304 * '''Data file''': format to use for the output data file name. The final name is {{{papywizard_<format>.xml}}}
     305  * {{{%(date)s}}}: expands to current date
     306  * {{{%(time)s}}}: expands to start shooting time
     307  * {{{%(date_time)s}}}: same as {{{%(date)s_%(time)s}}}
     308  * {{{%(mode)s}}}: expands to shooting mode (mosaic or preset)
     309 * '''Enable''': flag to enable the data file
     310 * '''Title''': title of the pano
     311 * '''GPS''': GPS informations of the pano
     312 * '''Comment''': comment on the pano
     313
     314==== Timer tab ====
     315
     316 * '''Start after''': delay to wait before starting
     317 * '''Enable''': switch to enable the '''Start after''' timer
     318 * '''Repeat''': number of repeats
     319 * '''Enable''': switch to enable the '''Repeat''' feature
     320 * '''Repeat every''': shoot panos every given time
     321
     322==== Misc tab ====
     323
     324 * '''Logger level''': level of informations to log
     325
     326==== buttons ====
     327
     328 * '''OK''': validate settings and close dialog
     329 * '''Cancel''': revert to previous settings and close dialog
     330
     331=== Bluetooth dialog ===
     332
     333This dialog shows the list of availabe bluetooth devices, and a button to refresh the list.
     334
     335=== Shoot dialog ===
     336
     337==== displays ====
     338
     339 * ''shooting scene'': display the shooting position. Clicking on this area while paused set the next position to shoot
     340 * ''text shooting area'': display the shooting position in text mode
     341 * ''sequence'': display the current shooting sequence
     342 * ''repeat counter'': display the current repeat value
     343 * ''elapsed time'': display the shooting time and total elapsed time
     344 * ''progress bar'': shooting process progression (for current repeat and all repeats)
     345
     346==== buttons ====
     347
     348 * '''Text''': toggle text/gaphical shooting areas
     349 * '''Rewind''': while paused, rewind the next position to shoot
     350 * '''Forward''': while paused, forward the next position to shoot
     351 * '''Data''': direct access button to the Data tab of configuration dialog
     352 * '''Timer''': direct access button to the Timer tab of configuration dialog
     353 * '''Step-by-step''': if checked, each step (moving, shooting) will need to be validated use the Pause/Resume button
     354 * '''Start''': start shooting process
     355 * '''Pause/Resume/Step''': pause/resume/step shooting process
     356 * '''Stop''': cancel shooting process
     357 * '''Close''': close shooting dialog
     358
     359=== Log dialog ===
     360
     361==== buttons ====
     362
     363 * '''Clear Log''': clear the log window
     364 * '''Save Log''': save the log to file (in the data storage dir)
     365
     366== Keyboard shortcuts ==
     367
     368Papywizard main target is ''Nokia Internet Tablets'', so keyboard shortcuts are dedicated for that plateform (but works fine with normal PC). Here are defined shortcuts:
     369
     370 * In main window:
     371||'''Nokia'''||'''PC'''||'''Function'''||
     372||[[Image(Right.png, 24, nolink)]]||Right||Turn the head right (Yaw +)||
     373||[[Image(Left.png, 24, nolink)]]||Left||Turn the head left (Yaw -)||
     374||[[Image(Up.png, 24, nolink)]]||Up||Move the head up (Pitch +)||
     375||[[Image(Down.png, 24, nolink)]]||Down||Move the head down (Pitch -)||
     376||[[Image(F7-increase.png, 24, nolink)]]||End||Increase the manual speed||
     377||[[Image(F8-decrease.png, 24, nolink)]]||Home||Decrease the manual speed||
     378||[[Image(Return.png, 24, nolink)]]||Return||Open shooting dialog||
     379||[[Image(Escape.png, 24, nolink)]]||Escape||Quit the application||
     380||||Ctrl-q||Quit the application||
     381||||Alt-F4||Quit the application||
     382
     383 * In shooting dialog:
     384||'''Nokia'''||'''PC'''||'''Function'''||
     385||[[Image(Right.png, 24, nolink)]]||Right||Forward shooting position (while paused)||
     386||[[Image(Left.png, 24, nolink)]]||Left||Rewind shooting position (while paused)||
     387||[[Image(Up.png, 24, nolink)]]||Up||Forward shooting position (while paused)||
     388||[[Image(Down.png, 24, nolink)]]||Down||Rewind shooting position (while paused)||
     389||[[Image(Return.png, 24, nolink)]]||Return||Start/pause shooting||
     390||[[Image(Escape.png, 24, nolink)]]||Escape||Stop shooting - Return to main window||
     391
     392 * In all dialogs:
     393||'''Nokia'''||'''PC'''||'''Function'''||
     394||[[Image(F4-menu.png, 24, nolink)]]||F10||Show menu||
     395||[[Image(F5-home.png, 24, nolink)]]||-||Standard maemo behaviour||
     396||[[Image(F6-fullscreen.png, 24, nolink)]]||F11||Toggle fullscreen mode||