SPEOS CAA V5 Based Digital Vision & Surveillance V11
SPEOS CAA
V5 Based
Digital Vision
&
Surveillance
V11
Table of Contents
Features .............................................................................................................. 5
Editors .......................................................................................................... 5
Editors toolbar ....................................................................................... 5
Optical Properties ........................................................................................... 5
Optical properties toolbar ........................................................................ 5
Creating a Face Optical Properties ............................................................ 6
Adding optical properties to a material ...................................................... 8
Creating an Ambient Material ................................................................. 12
Sources ....................................................................................................... 14
Sources toolbar .................................................................................... 14
Ambient source .................................................................................... 14
Sensors ....................................................................................................... 31
Sensors toolbar .................................................................................... 31
Creating a Camera Sensor ..................................................................... 31
Distortion curve ................................................................................... 37
Simulations ................................................................................................. 39
Simulations toolbar ............................................................................... 39
Features parametrization for simulations ................................................. 39
Creating an Interactive Simulation .......................................................... 40
Creating an Inverse Simulation .............................................................. 44
Isolate Simulation command .................................................................. 50
Isolate And Export Simulation command ................................................. 51
Export Simulation command .................................................................. 52
Parametrization .................................................................................... 54
Visualization as geometry ...................................................................... 71
Using a design table with a simulation ..................................................... 81
Understanding propagation error ............................................................ 83
Camera Post Processing Interface ........................................................... 84
Update ...................................................................................................... 105
Update toolbar ................................................................................... 105
Local Update command ....................................................................... 106
External Update command ................................................................... 106
Network Update command ................................................................... 109
Tools ........................................................................................................ 110
Tools toolbar ...................................................................................... 110
SPEOS Core command ........................................................................ 110
Simulation Spoolers Status command ................................................... 114
SPEOS input files & SPEOS output files commands .................................. 117
Results ...................................................................................................... 118
Viewers toolbar .................................................................................. 118
HTML Report ...................................................................................... 119
Projected Grid result ........................................................................... 120
XMP result ......................................................................................... 130
HDRI result ........................................................................................ 132
PNG result ......................................................................................... 134
Tutorial ........................................................................................................... 136
Lesson 1: Preparing data ............................................................................. 136
Lesson 2: Creating a Camera Sensor ............................................................ 136
Lesson 3: Creating an Interactive Simulation using a Camera Sensor................ 137
Lesson 4: Creating an Ambient Source to model environment light (sky)........... 144
Lesson 5: Creating an Inverse Simulation using a Camera Sensor .................... 145
Lesson 6: Analyzing results ......................................................................... 146
Lesson 7: Creating a Camera Post Processing ................................................ 149
Customizing .................................................................................................... 152
Customizing SPEOS Licensing Panel .............................................................. 152
Customizing General Panel .......................................................................... 153
Customizing Meshing Panel .......................................................................... 155
Customizing Simulation Presets .................................................................... 157
Multithreading ............................................................................................ 160
Miscellaneous .................................................................................................. 162
Warning and Error messages ....................................................................... 162
Code error management...................................................................... 162
Warning: Some material properties... ................................................... 164
Warning: Sorry, the license required for this simulation (VE3 or VE4)... .... 165
Warning: Functionality not supported .................................................... 166
Warning: Invalid input parameters. Sensors .......................................... 167
Warning: Invalid input parameters. No optical properties... ..................... 167
FAQs......................................................................................................... 167
Troubleshootings ........................................................................................ 170
Apply material command disappears from Material toolbar ...................... 170
Information for Support .............................................................................. 170
Index .............................................................................................................. 176
Features Page 5 of 179
FEATURES
Editors
Editors toolbar
Simple Scattering Surface Editor
Advanced Scattering Surface Editor
Coated Surface Editor
Fluorescent Surface Editor
Retro Reflecting Surface Editor
Rough Mirror Surface Editor
Simple BSDF Surface Editor
Spectrum Editor
User Material Editor
IESNA LM-63 Viewer
Eulumdat Viewer
OPTIS Intensity Viewer
Optical Properties
Optical properties toolbar
Apply Material (See CATIA V5 User's Documentation)
Face Optical Properties
Ambient Material see page 12
3D Texture
LCD component
Page 6 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Creating a Face Optical Properties
1. Click on the Face Optical Properties icon . The Face Optical Properties panel appears.
2. Select faces having other SOP than the material applied.
3. Set the Surface Optical Properties to this set of faces.
BSDF180 file can be applied as Surface Optical Properties on Face. The normal direction
corresponding to the Normal BSDF can be oriented selecting the surface and using the Reverse
Direction button.
Features Page 7 of 179
The BSDF 180 supports the anisotropy
See to Adding optical properties to a material see page 8 to learn more about the different types of
Surface Optical Properties.
Page 8 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
4. Click OK. The Face Optical Properties is added in the specification tree in the Optical Properties
section and in the 3D view.
Adding optical properties to a material
This task shows how to add surface and volume optical properties to materials.
Optical properties define how light rays interacts with geometries.
Volume Optical Properties (VOP) define the behavior of light rays when they are propagated in a solid.
Surface Optical Properties (SOP) define the behavior of light rays when they hit a face.
In SPEOS CAA V5 BASED standard CATIA V5 material are enhanced with Volume optical Properties
(VOP) and Surface Optical properties (SOP). Up to the version 5.0 of SPEOS CAA V5 Based, definition
of these properties was required for all materials involved in a simulation. In order to increase the ease
of use of the software, it is now possible to use materials without optical properties. Physical
parameters will be automatically converted from the Rendering tab of the material according to the
following conversion table.
RENDERING PARAMETERS RP PHYSICAL PARAMETERS PP(Λ)
Ambient [0, 1] + RGB ½ Lambertian L(λ)
Diffuse [0, 1] + RGB ½ Lambertian L(λ)
Specular [0, 1] + RGB Gaussian G(λ)
Emission [0, 1] + RGB None
Roughness [0, 1] Gaussian Angle a
Transparency[0, 1] + RGB Transmitted Specular ST(λ)
Refraction Refractive Index n
Reflectivity [0, 1] + RGB Reflected Specular SR(λ)
A material should be applied on a geometrical element or created in a material library.
Optical properties can be added to the CATIA V5 default library. But be aware that the optical
properties will be lost at the next CATIA V5 update.
Features Page 9 of 179
1. Right-click on a material and select Properties.
2. Click on More to select the Optical Properties tab.
Note that there are two ways to launch the Properties panel of a material.
By double-clicking on the material.
By right-clicking on the material and selecting Properties.
By the first way the Optical Properties panel appears automatically, by the second way, the Optical
Properties panel appears only after clicking the More button.
Note that at the first edition of the Optical properties panel, a message indicating that a new properties
is added to the material appears.
This message appears two times, one for volume optical properties and one for surface optical
properties. See How to avoid warning when adding new optical properties to a material ? to avoid the
display of this message.
Select the VOP type and set the associated parameters. Tree types are available for volume optical
properties.
Page 10 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Opaque
Non optic for non transparent material.
Optic
Optic for transparent colorless material without bulk scattering.
Index.
Absorption: Set the correct absorption coefficient. The unit is 1/mm.
For example to get a glass slide which absorbs 10%, there are two possibilities: A glass slide
without volumic absorption with a Face Optical Properties which absorbs 10% OR a glass slide with
absorption but in this case it is needed to adjust the absorption parameter with several tests
(source - slide – sensor).
Constringence (http://en.wikipedia.org/wiki/Constringence): This is a parameter related to the
absorption of the material.
Library
Library for selecting a external file containing volume optical properties data.
File containing volume optical properties data can be created or edited thanks to the Material Editor
. This file has an OPTIS native file format.
Select the SOP type and set the associated parameters. Tree types are available for surface optical
properties:
Features Page 11 of 179
Mirror for perfect specular surface of non transparent material.
Optical polished for perfect polished surface of transparent material.
Library for selecting a external file containing surface optical properties data.
File containing surface optical properties data can be created or edited thanks to one of available
editors. All these files have an OPTIS native file format.
SPEOS CAA V5 Based manages external links for file containing optical properties data. Both absolute
and relative links can be created. An external link is relative if the file is in a sub-directory named
SPEOS input files located in the same directory of the CATIA document (CATPart, CATProduct or
CATMaterial). When a file is selected a panel allows you to copy the file in the appropriate directory in
order to create a relative link.
Page 12 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Note that material data could be stored either in a CATPart/CATProduct file or a CATMaterial file
according the Link to file check box status when the material is applied.
If the Link to file option is used when the material is applied, the external links will be relative to the
CATMaterial file.
Creating an Ambient Material
The change of the Ambient Material can allow the simulation of light behavior in media such as water
or fog, for example.
Use of Ambient Material in Inverse Simulation is not compatible with the use of Ambient Sources.
How to create an Ambient Material?
1. Click on the Ambient Material icon from the Optical Properties toolbar.
Features Page 13 of 179
The following window appears.
2. Choose the type between Optic, Opaque and Library. Set the parameters and click OK.
3. The new optical property is inserted in the SPEOS CAA V5 Based tree.
4. Then insert the Ambient Material in a simulation.
Example
Page 14 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Without ambient material
With ambient material
Sources
Sources toolbar
Ambient Source see page 14
Ambient source
An Ambient Source allows the model of environment light such as sky and sun.
You can use an ambient source with an inverse simulation.
You can view Inverse simulation parameterization.
Creating an Ambient Source with Uniform type
A VEX or AX package is needed to have access to the Ambient Sources with Uniform type.
Features Page 15 of 179
1. Click on the Ambient Source icon . The Ambient Source Definition panel appears.
2. Select Uniform as Type.
3. Select the Zenith direction.
Page 16 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
4. Adjust the Luminance value. Usually this value is in the range 1000 cd/m² and 20000 cd/m².
5. Select the Spectrum file. Basically the spectrum could be defined as a blackbody at 25000.0 Kelvin.
This can be created with spectrum generator tool of the Spectrum Editor.
6. Set Mirrored extend at true to have ambient light from all space or at false to have ambient light
only in the upper half space.
Features Page 17 of 179
7. Check the Sun button to automatically add the sun to the Ambient Source.
8. Select a line for the sun direction.
9. Click OK. The Ambient Source is displayed in the 3D view.
Note that the Sun arrow points the sun, so the arrow is in the opposite of the photons light from
the sun. The Ambient Source is added in the specification tree in the Sources section.
Page 18 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Sun Properties
Appeared diameter: 0.0087 radians
The sun has an illuminance at the ground equal to around 105 Lux (bright weather), regardless its
orientation.
Sun color temperature is approximately equal to 5800K.
The apparent diameter is equal to around 0.5°. The solid angle within the one we see it is equal to
2*pi(1-cos(0.5°/2))=5.98*10-5 steradian. So the luminance is equal to around
105/5.98*10-5=1.6*109 cd/m².
Sun luminance and spectrum of Ambient source with Uniform type is equivalent to Sun luminance
and spectrum of Natural Light Ambient source with a turbidity of 1, when the observer is located in
London at 12am, the 30th of May.
Sun only in simulations
In the Ambient Source Definition panel, set the luminance of the uniform source to 0 cd/m².
Features Page 19 of 179
To improve simulation time when using Determinist or Photon Map algorithms, set the ambient
sampling to 1.
The sun of the Uniform Ambient Source changes of power and color belong to its orientation.
Creating an Ambient Source with Environment type
A VEX or AX package is needed to have access to the Ambient Sources with Environment type.
1. Click on the Ambient Source icon . The Ambient Source Definition panel appears.
Page 20 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
2. Select Environment as Type.
3. Select the Zenith direction.
Features Page 21 of 179
4. Adjust the North direction.
5. Adjust the Luminance value. Usually this value is in the range 1000 cd/m² and 20000 cd/m².
Page 22 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
6. Select the Spectrum files. This can be created with the spectrum generator tool of the Spectrum
Editor or download from the online library
(http://www.optis-world.com/download_software_libraries.asp).
A right-click allows the user to clear selection if needed.
7. Select the Environment Type and the associated image.
Features Page 23 of 179
Note that some HDRI can be found at:
Light Probe Image Gallery (free) (http://www.debevec.org/Probes/)
Dosch Design
(http://www.doschdesign.com/products/hdri/?sid=cb83c8f4fdd2c07b38794d75a4be8c8f)
Sachform Technology
(http://www.sachform.de/index.php?option=com_content&view=article&id=5&Itemid=4&lang=
en)
Note that RTR Environment and PHS Environment types are not yet available.
8. Click OK. The Ambient Source is displayed in the 3D view.
The Ambient Source is added in the specification tree in the Sources section.
Conventions
Note for all different North type selected, Zenith defines the main direction for the ambient source. If
the North is not perpendicular to the Zenith, it is projected in the perpendicular plan.
Note conventions used on each type of image for the north and the zenith.
Page 24 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
For the Longitude/Latitude Map type, these are conventions.
For the Light probe type, these are conventions.
Features Page 25 of 179
For the Horizontal Cross type, these are conventions.
For the Vertical Cross type, these are conventions.
Page 26 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
For the OpenEXR type, these are conventions.
Ground plane
The Ground plane is only available for Ambient Source with Environment type in HDRI.
Origin
The plane is defined by a point and a normal, this one is automatically the zenith direction.
Height
The height corresponds to the height of the view compared to the plan. The default value is 1000 mm.
Features Page 27 of 179
Example without and with the Ground plane
Page 28 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Ambient Source visualization
The functionality allows the user to visualize an Ambient Source in real time as it could be in
simulation. The visualization is made through the display of the Ambient Source with the type in the
background of the CATIA window. The orientation of the environment is related to the camera
controlled by the user and the result is a real time.
The functionality is available from the CATIA R19 release.
Before to use this functionality, go to Tools, Options, General, Display, Performance, Miscellaneous yo
enable the OpenGL Shader.
Set Ambient Source as background
This tool allows the use to enable the visualization of the Ambient Source in the CATIA window.
1. Open your product including an Ambient Source.
2. Click on the Set Ambient Source as background icon .
Features Page 29 of 179
3. Select the Ambient Source which will be displayed on CATIA V5 3D view background.
Clicking again on the Set Ambient Source as background icon disables the tool.
Automatic update of the visualization in case of modifications in the Ambient Source definition or in
the model.
Natural Light example
Page 30 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Increment background exposure
Clicking on the Increment background exposure icon , makes the background brighter.
Decrement background exposure
Clicking on the Decrement background exposure icon , makes the background darker.
Each click increments or decrements the level with a 15% factor.
Automatic update of the visualization in case of modifications in the Ambient Source definition or in the
model.
Multithreading of the visualization
When launching complex operations as optimization, it is recommended to disable the Ambient Source
Visualization to avoid a slow down of the performances.
Features Page 31 of 179
Sensors
Sensors toolbar
Camera Sensor see page 31
Creating a Camera Sensor
The Digital Vision and Surveillance package is required to be able to create a Camera Sensor
(SV5_DVS1 & SV5_DVS2).
This is the overall camera sketch.
Page 32 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
How to create a Camera Sensor
1. Click on the Camera Sensor icon . The Camera Sensor Definition panel appears.
2. Select a point and two lines to locate the sensor in the 3D space.
Features Page 33 of 179
3. Adjust the Optics parameters.
F number is described here (http://en.wikipedia.org/wiki/F-number). It does not have any impact
in the result, it is used to represent the aperture of the front lens.
F = 1
F = 4
The Imager is located at the focal point.
The Imager Distance does not have any impact on the result.
4. Define the Transmittance (http://en.wikipedia.org/wiki/Transmittance) and the Distortion see page
37.
5. Adjust the Sensor parameters.
Page 34 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Color mode
Monochrome mode
Simulation results will be available in grey scale.
Color mode
Simulation results will be available in color according to the white balance mode.
White balance mode
None
The transmittance and the red, green, blue sensor sensitivities are applied to the detected spectral
image in order to get the color result (more details).
Grey world
The grey world assumption states that the content of the image is grey on average.
This method computes and applies coefficients to the red, green and blue images in order to make sure
their averages are equal (more details).
User white balance
In addition to the basic treatment, user coefficients are applied to the red, green, blue images (more
details).
Display primaries
This mode tries to make sure that when the camera sees the display, it produces the same color
output as when it sees the actual scene.
This is achieved by multiplying the RGB colors by a 3x3 matrix whose coefficients are computed using
the sensitivity spectrums and the display primaries spectrums (more details).
Gamma Correction
This is the compensation of the curve before the display on the screen. See the Viewers preferences.
1. Adjust the Sensor sensitivity parameters.
Features Page 35 of 179
2. Adjust the Wavelength parameters and a Design Table if needed.
3. The Camera Sensor is displayed in the 3D view.
4. Click on Reverse direction to adjust the camera's orientation.
5. Click OK. The Camera Sensor is added in the specification tree in the Sensors section.
Properties panel
A right-click on the Sensor allows the user to open the Properties panel.
Page 36 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
A click on More shows the Parameters tab.
Display Camera field
Display Object field
Features Page 37 of 179
Visualization radius
Display aperture
Distortion curve
The Digital Vision and Surveillance package is required (SV5_DVS1 & SV5_DVS2).
Page 38 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Object angle (rad) vs. Image angle (rad)
SPEOS distortion curve file format
LINE DESCRIPTION EXAMPLE COMMENTS
1 Header OPTIS - Optical distortion file v1.0
Version (v1.0) could
be used for
further file format
update.
2 Comment
Created by sdarreau with
DistortionCurveGenerator, 02/06/2010
13:18:32
For information only,
without any impact
on simulation
results.
3 Format 0
Format = 0 indicates
that the distortion
curve is given as a
list of sample of
object angle vs
image angle. No
other value will be
supported in V1.0
version.
4 Number of
sample 91
5
Object angle
vs. image
angle
0
0.0174532777777778
0.0349065555555556
0.0523598333333333
0.0698131111111111
0.0872663888888889
0
0.0273028387171337
0.0537954641261183
0.0795296582853432
0.1045521483695
0.128905211037813
Angle values in
radian.
Features Page 39 of 179
LINE DESCRIPTION EXAMPLE COMMENTS
0.104719666666667
0.122172944444444
....
...
0.261799166666667
0.279252444444444
0.296705722222222
0.152627193841727
0.175752965965063
...
...
0.342599269505361
0.361513076284991
0.3800535557331
Distortion curve
Maximal value of the object angle is Π/2.
Simulations
Simulations toolbar
Interactive Simulation
Inverse Simulation
Isolate Simulation see page 50
Isolate and Export Simulation see page 51
Export Simulation see page 52
Features parametrization for simulations
These are compatible sources and sensors with the different types of simulation.
Page 40 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
SIMULATIONS SOURCES SENSORS
Inverse Simulation Ambient Source Camera Sensor see page 31
Interactive
Simulation
Camera Sensor see page 31
Creating an Interactive Simulation
The main goal of an Interactive Simulation is to display the propagation of rays in the 3D view in order
to understand the behavior of a light beam in an optical system. An interactive simulation does not
allow the measurement of a light quantity only a visual feedback of the propagation is available.
Thanks to the low number of rays required by this simulation the result is synchronized with the
associated geometries. This functionality is a very useful tools to understand quickly how a design
modification change the optical behavior.
See Features parameterization for simulations see page 39.
The Digital Vision and Surveillance 1 package is required (SV5_DVS1).
How to create an Interactive Simulation
1. Click on the Interactive Simulation icon . The Interactive Simulation Definition panel appears.
Features Page 41 of 179
2. Select Geometries.
3. Select the Camera Sensor.
4. The Preview meshing can be enable (See Tessellation Preview see page 54 details).
5. You can apply a Simulation Preset to the simulation or save it by clicking on Select button. The
Preset panel appears.
See Simulation Presets see page 54 page for more details.
6. Click on More gives access to the Visualization as geometry see page 71.
Page 42 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
7. Click OK. The Interactive Simulation is displayed in the 3D View.
The displayed grid corresponds to the projection of the camera's pixels on the selected geometries.
8. The Interactive simulation is added in the specification tree under the Simulations node.
Features Page 43 of 179
Properties panel
A right-click on the Simulation allows the user to open the Properties panel.
Graphic panel
The color, the line type, the thickness of the display can be changed. If No color is selected as Color,
the color is calculated from the wavelength parameter of each ray.
Simulation panel
See Parametrizing a simulation see page 54. This curve shows the obtained results when changing the
Smart Engine value.
Preset panel
See Simulation Presets see page 68.
Page 44 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Interactive simulation panel
Interactive Simulation has been enhanced with impacts visualization. Only impacts on surfaces are
displayed. Draw rays and Draw impacts are available from the Interactive simulation panel.
Creating an Inverse Simulation
An Inverse Simulation allows the propagation of a large number of rays from a camera or an eye
(Radiance Sensor) to sources and through an optical system. At the end of a simulation, photometric
or colorimetric level are available for measurement.
See Features parameterization for simulations see page 39.
The Digital Vision and Surveillance 2 package is required (SV5_DVS2).
Features Page 45 of 179
How to create an Inverse Simulation
1. Click on the Inverse Simulation icon . The Inverse Simulation Definition panel appears.
Number of pass only appears in case the Monte-Carlo is true.
Page 46 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
2. Select sources, geometries and sensors involved in this simulation.
Only one single sensor for each simulation can be used.
3. The Preview meshing can be enable (See Tessellation Preview details).
Features Page 47 of 179
4. Adjust the number of pass.
5. For Design Table, see the Using a design table with a Direct simulation or an Inverse Simulation
see page 81 page.
6. Select an Ambient Material see page 12 if needed.
7. You can apply a Simulation Preset to the simulation or save it by clicking on Select button. The
Preset panel appears.
See Simulation Presets page for more details.
Page 48 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
8. Clicking on More, other commands can be used.
Visualization as geometry
See Visualization as geometry see page 71 page.
Out paths faces: Transparent bodies usable for outdoor light filtering
During sun load study in a cockpit (Automotive and Aerospace), the gathering and the selection of all
geometries (roof, doors, floor, hood) involved in the analysis can be painful due to the high number of
parts. Moreover at the first steps of the analysis the role of these parts is only to block the light coming
from the sun, the sky or other outdoor lights. The simulation allows now the user to specify only the
glazing parts avoiding the gathering and the selection of all opaque parts.
Click OK. The Inverse Simulation is added in the specification tree within the Simulations section.
Note that the Inverse Simulation is not automatically updated.
1. Select the Inverse Simulation in the specification tree and click the SPEOS CAA V5 Based update
button . A panel indicates the progress of the simulation.
Features Page 49 of 179
Note that in case of large projects such as automotive, an initial progress bar is displayed for the
meshing phase.
Note that the simulation can be stopped by clicking on the Cancel button. Intermediate results with
the current progress of the simulation are available.
2. Expand the Inverse Simulation to access to the results.
Properties panel
A right-click on the Sensor allows the user to open the Properties panel.
Page 50 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Graphic panel
The color, the line type, the thickness of the display can be changed. If No color is selected as Color,
the color is calculated from the wavelength parameter of each ray.
Simulation panel
See Parametrizing a simulation see page 54.
Inverse Simulation panel
See Parametrizing an Inverse Simulation.
Preset panel
See Simulation Presets see page 68.
Isolate Simulation command
An Isolated Simulation is principle similar to the Isolate command of CATIA V5. Its goal is to keep in
the specification tree of CATIA V5 the results of a simulation, independently of the historic update.
Isolated Simulation has no link with sources, geometries and sensors.
Features Page 51 of 179
How to use the Isolate Simulation command?
1. Select the simulation feature to be isolated.
2. Click on the Isolate Simulation icon . A new simulation is added in the specification tree giving
an easy access to the results files.
Note that this simulation cannot be updated or run anymore.
Isolate And Export Simulation command
Moreover than the Isolate Simulation command an export is performed in the same time allowing the
run of this simulation after it was isolated thanks to an External Update or a Network Update.
Page 52 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
How to use the Isolate And Export Simulation command?
1. Select the simulation feature to be isolated.
2. Click on the Isolate And Export Simulation icon . A new simulation is added in the specification
tree giving an easy access to the results files.
Note that a parameter keeps the path of the exported file.
Note that simulation can be launch thanks an External Update or a Network Update.
Export Simulation command
1. Select the simulation feature to be exported.
2. Click on the Export Simulation icon .
Features Page 53 of 179
3. Enter the filename, and click Save.
4. A directory has been created at the entered location containing all the linked files to run the
simulation from SPEOS Core.
Note that contrary to Isolate And Export command no more link with the CATIA specification tree will
be made.
Page 54 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Parametrization
Parameterizing a simulation
This panel is available by selecting Properties from the contextual menu on a simulation feature
(Interactive, Direct or Inverse), the More button should be clicked to access this panel.
Features Page 55 of 179
VOP on surface
In a clean modeling a Volume Optical Properties (VOP) should not be applied to a surface geometry.
However in some cases it could be difficult to create a solid from a set of faces especially with imported
geometry. SPEOS CAA V5 Based allows using a set of faces joined in surface feature (Join or an other
one) as a solid. (See also VOP On Surface Tutorial).
Simulation meshing
This parameter allows the user to preview the tessellation.
Tessellation sag mode
This parameter has the same meaning than the one used in Tools, Options, General, Display,
Performances, 3D accuracy. It defined the meaning of the Tessellation sag value parameter
Proportional or Fixed.
Tessellation sag value
If Tessellation sag mode is proportional the sag value depending on the size of each face. The sag
value is the diagonal of the bounding box of the face divided by the Tessellation sag mode value. If
Page 56 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Tessellation sag mode is fixed the sag value is equal to the Tessellation sag mode value. The sag value
defines the maximum distance between the geometry and the tessellation.
Tessellation step value mode
This parameter has the same meaning the one use in Tools, Options, General, Display, Performances,
3D accuracy. It defines the meaning of the Tessellation step value parameter Proportional or Fixed.
Tessellation step value
If Tessellation step value mode is proportional to the step value depending on the size of each face.
The step value is the diagonal of the bounding box of the face divided by the Tessellation step value
mode value. If Tessellation step value mode is fixed the step value is equal to the Tessellation step
value mode value. The step value defines the maximum size of a triangle of the tessellation.
Tessellation angle
The angle value defines the maximum angle between two triangles of the tessellation.
Note that the default value for the tessellation parameters are defined in the Meshing panel see page
155 of SPEOS CAA V5 Based options.
Geometrical distance tolerance
The Geometrical distance tolerance parameter defines the maximum distance to consider two faces as
tangent.
Geometrical angle tolerance
The Geometrical angle tolerance parameter defines the maximum angle to consider two faces as
tangent.
Minimum energy percentage
The Minimum energy percentage parameter defines de minimum energy ratio to continue to propagate
a ray. This parameter is useful to avoid to propagate useless rays.
Features Page 57 of 179
Maximum impact
The Maximum impact parameter defines the maximum number of a rays impacts to continue to
propagate it. This parameter is useful to stop the propagation of ray in optical system as an integrated
sphere in witch a ray is never stop.
Smart Engine
This parameter controls a Smart Engine parameter that defines a balance between the speed and
memory. The best parameter is 3 for an Interactive simulation, 9 for Direct and Inverse simulations. It
is not recommended to change this value for a classical use of SPEOS CAA V5 Based. However in some
cases when memory use is critical due to huge geometries (i.e. complete cockpit, cabin, car or
building) this value can be reduced in order to save memory. Also in other cases when a simulation
contains very small detailed geometries inserted in a big scene (i.e. detail of headlamp bulb placed in a
simulation with a 50m long road geometry) this value can be increased to reach better performances.
Disable tangent bodies management
SPEOS CAA V5 Based is able to manage tangent solid. This management required extra processing
time. If an optical system do not have tangent faces, the simulation can be speeded up by setting this
parameter to true. If Disable tangent bodies management parameter is set to true and some faces are
tangents propagation errors see page 83 will be generated and results will be wrong.
Weight
The Weight parameter allows controlling the energy of each ray. It is highly recommend to set this
parameter to true excepted in interactive simulation. Unsetting this parameter is useful to understand
some phenomena as absorption. See Parameterizing a simulation - Weight see page 61 for more
details.
Texture
The Texture parameter activates the taking into account of the textures applied on the geometry
through materials in the SPEOS CAA V5 Based Simulations. Textures modify the interaction between
light and faces for all kinds of interaction excepted the Specular reflection.
Parameterizing an Inverse Simulation
Parameterizing an Inverse Simulation
This panel is available by selecting Properties from the contextual menu on an Inverse Simulation
feature, the More button must be clicked to access this panel.
See Parameterizing a simulation see page 54.
Monte Carlo algorithm
This parameter allows switching between Monte Carlo and Determinist calculation method.
Avoids any noise
Does not manage dispersion
Does not manage bulk diffusion
No management of the diffuse inter-reflection
Page 58 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Does not support Light Expert analysis
Requires at least VE3 license
Parameterizing an Inverse Simulation_when Monte
Carlo algorithm is not activated_and Photon Map is not
activated see page 59
Note that the parameters' list is updated according to the Monte Carlo algorithm parameter.
Features Page 59 of 179
Inverse Simulation - Determinist
The goal of this page is to detail the Inverse Simulation parameters for non-Monte Carlo, or
determinist algorithms, without the use of photon maps.
Authorize the use of Rendering properties as Optical properties
Uses CATIA V5 material's rendering properties when SPEOS CAA V5 Based VOP & SOP are not set. A
remove button has been added to material definition window to unset SPEOS optical properties.
Photon map
Allows the use of photon maps. See Inverse Simulation Photon Map to learn more about this option.
Ambient Sampling
The parameter defines the sampling i.e. the quality of the ambient source. The greater this value is the
better the quality of the result is but longer is the simulation. The following table gives some ideas of
the balance between quality and time.
From the 7.2 release, the management of ambient source have been improved. Now, values of
ambient sampling needs to be lower than before. A default value could be 20 and a value for good
results could be 100.
Page 60 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
AMBIENT SAMPLING = 20 REFERENCE TIME / 3
DEFAULT VALUE AMBIENT SAMPLING = 100 REFERENCE TIME
AMBIENT SAMPLING = 500 REFERENCE TIME X 4
Specular Maximum impact number
This number defines the maximum number of specular interaction.
Anti-aliasing
This parameter allows the activation of the anti-aliasing. Anti-aliasing reduces artifacts as jagged
profiles and fine details but increases the simulation time.
Features Page 61 of 179
ANTI-ALIASING DEACTIVATED REFERENCE TIME / 2
DEFAULT VALUE ANTI-ALIASING ACTIVATED
REFERENCE TIME
Specular approximation angle
For rendering purposes, it can be interesting to replace perfectly specular surfaces with a Gaussian.
This gives better and faster results. Have a look at Specular Approximation Angle to get more details.
The default value is 0.0 (the specularity is kept). The typical application of this option is the rendering
of automotive tail lamps lit appearance. For this application, a typical value would be 5 to 10 degrees.
Parameterizing a simulation - Weight
This panel is available by selecting Properties from the contextual menu on Direct Simulation or
Inverse Simulation feature, the More button must be clicked to access the Simulation panel.
See Parameterizing a simulation see page 54.
Page 62 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Weight
Historically, the Weight parameter set to False is prior to Weight set to True. Weight set to True has
been introduced in SPEOS CAA V5 Based as it is more efficient in controlling the energy of each ray.
This parameter influences Monte Carlo processing of Ray/Face and Ray/Volume interactions.
When Weight is set to False, rays' energy stays constant and probability laws dictate if they
continue or stop propagation.
When it is set to True, ray's energy evolves with interactions until they reach sensors.
In the case of Ray/Face interaction, let us consider rays reaching an optical surface having a 50%
reflectivity.
When the Weight parameter is set to False, rays have 50% probability to be reflected.
When set to True, all the rays are reflected with 50% of their initial energy.
In the case of Ray/Volume interaction, let us consider rays propagating inside an absorbing material.
Features Page 63 of 179
When the Weight parameter is set to False, rays have a probability to be absorbed or transmitted
according to their path through the material.
When set to True, rays' energy decreases exponentially according to the material absorption value
and the path of rays through it.
Practically, using Weight in simulation improves results' precision as more rays with contributing
energy reach sensors. So, to get the same amount of rays on sensors without the Weight parameter,
the user needs to set more rays in simulations, which also increases simulation time.
WEIGHT INTERACTIVE SIMULATION RESULT
Page 64 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
WEIGHT INTERACTIVE SIMULATION RESULT
Weight set to False is very useful in two cases. Case 1: Analyzing phenomena such as absorption Let
us consider a material with absorption. We want to observe the absorbed rays using an interactive
simulation.
WEIGHT INTERACTIVE SIMULATION RESULT
Features Page 65 of 179
WEIGHT INTERACTIVE SIMULATION RESULT
Case 2: Simulation performance improvement in closed systems Let us consider an integrating sphere
with inside a light source and a sensor. The surface inside the sphere has a high reflectivity value. The
system is set so the sensor is protected from direct illumination from the light source.
We observe difference in simulation duration considering Weight set to True or False:
WEIGHT SIMULATION TIME (S)
1747
440
This difference is due to the fact that low energy rays are still propagating after several bounds in the
system for simulations using Weight whereas the probability the rays still propagate decreases each
bound they make for simulations not using Weight.
Parameterizing a simulation - Texture Normalization
This panel is available by selecting Properties from the contextual menu on Direct Simulation or
Inverse Simulation feature, the More button must be clicked to access this panel.
Page 66 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
See Parameterizing a simulation see page 54.
Texture Normalization
This parameter allows you to switch between different normalization methods.
NORMALIZATION TYPE SURFACE OPTICAL
PROPERTIES TEXTURE
PROPERTIES ABSORPTION
- -
Surface Optical
Properties
NORMALIZATION TYPE SURFACE OPTICAL
PROPERTIES
TEXTURE PROPERTIES
ABSORPTION
Description:
The simulation result takes in account
BRDF or scattering properties of the
simulation elements plus texture
information.
Yes Yes Texture
Features Page 67 of 179
NORMALIZATION TYPE SURFACE OPTICAL
PROPERTIES
TEXTURE PROPERTIES
ABSORPTION
Description:
The simulation result is normalized
using the BRDF or scattering
properties and shows the texture on
the elements. This option allows the
user to get photometric results close
to the ones obtained without texture.
Yes No Surface Optical
Properties
NORMALIZATION TYPE SURFACE OPTICAL
PROPERTIES
TEXTURE PROPERTIES
ABSORPTION
Description:
The simulation result is normalized
using the texture and shows it on the
elements.
No Yes Texture
Page 68 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
When looking globally, the texture does not have any effects on the photometry, but some pixels can
have a superior or inferior value compared to the physical value.
Parameterizing a simulation - Simulation Presets
Introduction
Simulation Presets (Predefined Sets of parameters) are models of simulation settings. A Preset is
created by the user from the parameters of an existing simulation and can be then applied to another
simulation. Preset creation copies all the parameters common to any simulation type (direct, inverse or
interactive simulation) and specific to a certain type. Simulation type and SPEOS CAA V5 Based version
are then integrated in the Preset in order to restrain its subsequent use (direct simulation Presets for
direct simulations and so on). A Preset is then applied by copying each of its parameters in the
corresponding simulation's parameter. A Preset is identified and referenced using:
A GUID, automatically generated when the Preset is created.
A revision number, updated when the Preset is modified.
A name, chosen by the user.
Preset Database
All the Presets are contained in a database accessible from the Simulation Presets see page 157 tab in
the options of the corresponding SPEOS CAA V5 Based workbench. Two types of library are managed:
Global, the Presets are common to user groups and cannot be modified (they can be set, for
example, by advanced users for novices).
User, the Presets are only available for a local user and can be modified.
Presets are stored as .OPTPreset files in SimulationPresets directories. Global Presets are located:
C:\Documents and Settings\All Users\Application Data\OPTIS\SimulationPresets (Windows XP)
C:\ProgramData\OPTIS\SimulationPresets (Windows Vista)
.\Global\OPTIS\SimulationPresets (Code Server Installation)
User Presets are located:
C:\Documents and Settings\user\Application Data\OPTIS\SimulationPresets (Windows XP)
C:\Users\user\AppData\Roaming\OPTIS\SimulationPresets (Windows Vista)
.\User\OPTIS\SimulationPresets (Code Server Installation)
Link to Presets
When a Preset is applied to a simulation, the simulation is linked to the applied Preset, this link
allowing finding it in the database.
Features Page 69 of 179
Update
When a simulation is linked to a Preset with a revision number different from the one stored by the
simulation, the link needs to be updated (see more details below).
Broken links
When a simulation is linked to a Preset cannot find it in the database, the link between the simulation
and the Preset is broken. In this case, the simulation keeps the set of parameters applied the last time
the Preset was found. The Preset will be retrieved by re opening the project with the database
containing it.
The interface to manage the Simulation Presets is located in the Simulation Properties, Preset tab.
This interface allows:
Visualizing the Preset applied to a simulation and the link status.
Saving simulation parameters to make a new Preset or modifying an existing one.
Selecting a Preset to apply to the simulation.
Updating an applied Preset.
Suppressing a link to a Preset.
Page 70 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
No applied Preset
The following information is displayed.
The user has the possibility to:
Select an existing Preset from the Preset list.
Create or update a Preset from the simulation's parameters.
To validate an action, the user needs to click on the Apply button.
Applied Preset
When the Preset is applied to a simulation, the Preset's name and the link status are displayed in the
Current Preset section. The status link can be:
OK, the Preset is found and the simulation parameters are up to date.
To Update, the simulation parameters need to be synchronized to the Preset.
Not Found: the Preset is not found.
Version not compatible, the applied preset is not compatible with the used version of SPEOS CAA
V5 Based.
The user has the possibility to:
Select another Preset of the list to apply.
Remove the link between the simulation and the Preset.
Update the simulation (when its status is not up to date).
Features Page 71 of 179
It is possible to select several simulations to apply a Preset.
When a Preset is applied to a simulation, all the simulation parameters are locked.
Visualization as geometry
Visualization as geometry is compatible with Interactive, Direct and Inverse Simulations.
CGR and VRML files
CGR and VRML files can be added in the Visualization as geometry and three way to work are
available:
Without material: The Graphic Material of the visualization is used.
With material without optical properties: The rendering properties of the material are used.
With material with optical properties: The optical properties are used.
Material without optical properties and enabling of the rendering properties' use on the simulation (CGR & VRML)
Page 72 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Material with optical properties (CGR & VRML)
Features Page 73 of 179
Material without optical properties with texture and enabling of the rendering properties' use on the simulation (CGR & VRML)
Page 74 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Material with optical properties with texture (CGR & VRML)
Features Page 75 of 179
Without optical material and enabling of the rendering properties' use on the simulation (CGR)
Page 76 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Without material and with optical texture and enabling of the rendering properties' use on the simulation (CGR)
Features Page 77 of 179
SafeWorks Manikin
It is now possible to select a SafeWorks Manikin within an Inverse Simulation to use its meshing as
geometry. As the Manikin does not have Graphical Material, the only way to use it within a simulation
is to apply him a CATIA material as followed:
Create a Manikin in a CATProduct.
Page 78 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Apply a material to the Manikin. The material can contain OPTIS optical properties or not but with
the authorization to use native CATIA rendering properties on the simulation. Note that textures
are taking into account if they are activated in the simulation.
Features Page 79 of 179
Insert the CATProduct in the assembly of the simulation.
Page 80 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Add the Manikin in the simulation.
Features Page 81 of 179
Launch the simulation.
In case it has been forgotten to apply a material on the Manikin located in the assembly, apply the
material, save and reload the manikin.
Using a design table with a simulation
This task shows how to use a design table with a Direct Simulation or an Inverse Simulation.
The goal of this functionality is to launch different simulation on different configurations of an optical
system.
Page 82 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
1. Edit the simulation, select the design table configuring the optical system and click OK.
2. Update the simulation.
Note that the current configuration is indicated in the progress panel.
Features Page 83 of 179
3. Expand the simulation node.
Note that results for each configuration are available.
Understanding propagation error
The goal of this task is to explain the different types of propagation error.
Volume body not closed error
Volume body not closed error; occurs when a ray inside a solid body cannot hit a face of this given
solid (to go out of this solid), only rays located very close to a corner can be involved. This error can
occur either if the solid faces are not really closed (imported geometry) or if a ray cannot detect a face
due to the Geometrical optical precision. This error can occur especially when VOP on Surface see page
54 parameter is used.
This error can be reduced by improving the precision of the CAD geometry or reducing the Geometrical
optical precision.
Volume conflict error
Volume conflict error occurs when a photon inside a body hits another solid body. This error can occur
especially when VOP on Surface see page 54 parameter is used.
This propagation error should be corrected by changing the geometry modeling.
2D tangent to 3D error
2D tangent to 3D error occurs when a solid geometry and surface geometry are tangent in a same
simulation. Note that SPEOS CAA V5 Based can manage two tangent solid geometries in a same
simulation.
This propagation error can be avoided by separating solid and surface elements by at least Geometrical
optical precision.
2D intersect 3D warning
2D intersect 3D warning occurs when a surface body is crossing a solid.
Page 84 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
This propagation error should be corrected by changing the geometry modeling.
Non optic material error
Non optic material error occurs when a ray enters in a solid body having Non optic as volume optical
properties.
This propagation error should be corrected by changing the modeling.
Camera Post Processing Interface
Camera Post Processing principle
The principle is to establish a link between SPEOS DVS DLLs and specific DLLs in order to post process
simulation images.
These specific DLLs are considered as SPEOS DVS plugins.
An OPTIS plugin is a dll that other OPTIS software can download and use for calculation defined by the
user.
All methods exported by the plugin will return an error code of integer type. The return value must be
0 if no error has occurred and a non zero value otherwise.
Any pointer to strings of characters returned by the plugin will be allocated in it and will be not deleted
by the caller.
The plugin must implement and export the described methods see page 84.
Methods
GetPluginType
Description
Return the type of the plugin (ex: DVS3).
Features Page 85 of 179
Syntax
int GetPluginType(wchar_t*& owszType)
owszType: Type of the plugin on return.
Example
{
owszType= &gwsPluginType[0];
return 0;
}
GetPluginGUID
Description
Return the GUID as a string. The GUID will be the only way to identify which plugin was used to
generate an operation.
Syntax
int GetPluginGUID(wchar_t*& owszGUID)
owszGUID: GUID of the plugin on return.
Example
{
owszGUID= &gwsGUID[0];
return 0;
}
GetPluginDescription
Description
Return a description which will be appear in the dialog box to help the user identify the operation.
Syntax
int GetPluginDescription(wchar_t*& owszDescription)
owszDescription: Description of the plugin on return.
Example
{
owszDescription= &gwsPluginDescription[0];
return 0;
}
GetOperationNb
Description
Return the number of operations include in the plugin.
Syntax
int GetOperationNb(unsigned int& ounOperationNb)
ounOperationNb: The number of operations on return.
Example
{
//check if input and output vector are not empty
if( !gVectInputData.empty() && !gVectOutputData.empty())
{
ounOperationNb= (unsigned int)gVectInputData.size();
return 0;
}
Page 86 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
else
{
return OPT_PLUGIN_ERROR_NO_OPERATION;
}
}
GetOperationDescription
Description
Return a description of a given operation of the plugin.
Syntax
int GetOperationDescription(const unsigned int iunOperationIndex, wchar_t*& owszDescription)
iunOperationIndex: Index of the operation.
owszDescription: Description of the plugin on return.
Example
{
//check if the operation index is not outside of the operation description vector
if(iunOperationIndex < gVectOperationDescription.size())
{
owszDescription= &gVectOperationDescription[iunOperationIndex][0];
return 0;
}
else
{
return OPT_PLUGIN_ERROR_UNKNOWN_OPERATION;
}
}
GetOperationInputNb
Description
Return the number of input parameters for a given operation.
Syntax
int GetOperationInputNb(const unsigned int iunOperationIndex, unsigned int&
ounOperationInputNb)
iunOperationIndex: Index of the operation.
ounOperationInputNb: Number of input parameters on return.
Example
{
int iReturn= 0;
//check if the operation index is not outside of the InputData vector
if(iunOperationIndex < gVectInputData.size())
{
//check if the input data vector is not empty
if(!gVectInputData[iunOperationIndex].empty())
{
ounOperationInputNb= (unsigned int)gVectInputData[iunOperationIndex].size();
iReturn= 0;
}
else
{
iReturn = OPT_PLUGIN_ERROR_NO_INPUT;
}
}
else
{
Features Page 87 of 179
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OPERATION;
}
return iReturn;
}
GetOperationInputType
Description
Return the type of a given input parameter of a given operation.
Syntax
int GetOperationInputType(const unsigned int iunOperationIndex, const unsigned int
iunOperationInputIndex, wchar_t*& owszType)
iunOperationIndex: Index of the operation.
iunOperationInputIndex: Index of the input parameter.
owszType: Character string containing the type of the input parameter on return.
owszType could have the following value:
file:ext: The parameter is a file selected by a browse. The extension of the file is defined by ext.
feat:ext: The parameter is a file coming from the selection of a SPEOS CAAV5 feature. The
extension of the file is given by ext.
featfile:ext: The parameter is a file coming from a browse or from the selection of a SPEOS
CAAV5 feature.
value:double: The parameter is a value of type double.
value:int: The parameter is a value of type int.
value:char: The parameter is a character string.
Example
{
int iReturn = 0;
//check if the operation index is not outside of the InputData vector
if( iunOperationIndex< gVectInputData.size())
{
//check if the operation inputdata index is not outside of the InputData vector of
the current operation
if( iunOperationInputIndex< gVectInputData[iunOperationIndex].size())
{
owszType=
&gVectInputData[iunOperationIndex][iunOperationInputIndex].wsType[0];
iReturn= 0;
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_INPUT;
}
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OPERATION;
}
return iReturn;
}
GetOperationInputDescription
Description
Return the description of an input parameter for a given operation and the name of the group
containing this input parameter.
Page 88 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Syntax
int GetOperationInputDescription(const unsigned int iunOperationIndex, const unsigned int
iunOperationInputIndex, wchar_t*& owszDescription, wchar_t*& owszGroup)
iunOperationIndex: Index of the operation.
iunOperationInputIndex: Index of the input parameter.
owszDescription: Description of the input parameter on return. This description will be displayed in
the API dialog box.
owszGroup: Name of the group containing the input parameter iunOperationInputIndex on return.
Parameters belonging to the same group will be grouped into the API dialog box.
Example
{
int iReturn = 0;
//check if the operation index is not outside of the InputData vector
if( iunOperationIndex< gVectInputData.size())
{
//check if the operation inputdata index is not outside of the InputData vector of
the current operation
if( iunOperationInputIndex< gVectInputData[iunOperationIndex].size())
{
owszDescription =
&gVectInputData[iunOperationIndex][iunOperationInputIndex].wsDescription[0];
owszGroup =
&gVectInputData[iunOperationIndex][iunOperationInputIndex].wsGroup[0];
iReturn= 0;
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_INPUT;
}
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OPERATION;
}
return iReturn;
}
SetOperationInputData
Description
Set the value of a given input data of a given operation.
Syntax
int SetOperationInputData(const unsigned int iunOperationIndex, const unsigned int
iunOperationInputIndex, const wchar_t* iwszData)
iunOperationIndex: Index of the operation.
iunOperationInputIndex: Index of the input parameter.
iwszData: Character string containing the value of the input parameter ( a filename, an int value,
.... see above for the allowed types).
Example
{
int iReturn= 0;
//check if the operation index is not outside of the InputData vector
if( iunOperationIndex< gVectInputData.size())
{
//check if the operation inputdata index is not outside of the InputData vector of
Features Page 89 of 179
the current operation
if( iunOperationInputIndex< gVectInputData[iunOperationIndex].size())
{
gVectInputData[iunOperationIndex][iunOperationInputIndex].wsData.assign(iwszData);
iReturn= 0;
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_INPUT;
}
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OPERATION;
}
return iReturn;
}
GetOperationOutputNb
Description
Get the number of output parameters of a given operation.
Syntax
int GetOperationOutputNb(const unsigned int iunOperationIndex, int& onOperationOutputNb)
iunOperationIndex: Index of the operation.
onOperationOutputNb: Number of output parameters on return. Types allowed for the output
parameters are the same as those allowed for input parameters.
Example
{
int iReturn= 0;
//check if the operation index is not outside of the OutputData vector
if(iunOperationIndex < gVectOutputData.size())
{
//check if outputdata vector is not empty
if(!gVectOutputData[iunOperationIndex].empty())
{
ounOperationOutputNb= (unsigned
int)gVectOutputData[iunOperationIndex].size();
iReturn= 0;
}
else
{
iReturn = OPT_PLUGIN_ERROR_NO_OUTPUT;
}
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OPERATION;
}
return iReturn;
}
GetOperationOutputDescription
Description
Get the description of an output parameter of a given operation.
Page 90 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Syntax
int GetOperationOutputDescription(const unsigned int iunOperationIndex, const unsigned int
iunOperationOutputIndex, wchar_t*& owszDescription)
iunOperationIndex: Index of the operation.
iunOperationOutputIndex: Index of the output parameter.
owszDescription: Description of the output parameter on return.
Example
{
int iReturn= 0;
if( iunOperationIndex< gVectOutputData.size())
{
if( iunOperationOutputIndex< gVectOutputData[iunOperationIndex].size())
{
owszDescription =
&gVectOutputData[iunOperationIndex][iunOperationOutputIndex].wsDescription[0];
iReturn= 0;
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OUTPUT;
}
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OPERATION;
}
return iReturn;
}
GetOperationOutputType
Description
Get the type of a given output parameter of a given operation.
Syntax
int GetOperationOutputType(const unsigned int iunOperationIndex, const unsigned int
iunOperationOutputIndex, wchar_t*& owszType)
iunOperationIndex: Index of the operation.
iunOperationInputIndex: Index of the output parameter.
owszType: Character string containing the type of the output parameter on return.
Example
{
int iReturn=0;
//check if the operation index is not outside of the OutputData vector
if( iunOperationIndex< gVectOutputData.size())
{
//check if the operation outputdata index is not outside of the OutputData vector
of the current operation
if( iunOperationOutputIndex< gVectOutputData[iunOperationIndex].size())
{
owszType=
&gVectOutputData[iunOperationIndex][iunOperationOutputIndex].wsType[0];
iReturn= 0;
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OUTPUT;
}
Features Page 91 of 179
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OPERATION;
}
return iReturn;
}
GetOperationOutputInformation
Description
Get informations to display result of a given output parameter of a given operation into the CATIA V5
3D view. It's an optional function.
Syntax
int GetOperationOutputInformation(const unsigned int iunOperationIndex, const unsigned int
iunOperationOutputIndex, wchar_t*& owszInformation)
iunOperationIndex: Index of the operation.
iunOperationInputIndex: Index of the output parameter.
owszInformation: String containing information with the following format:
Position: x, y, z | directionx: x, y, z | directiony: x, y, z | dimensionx: x | dimensiony x (all
values are given in m).
Example
{
int iReturn=0;
if( iunOperationIndex< gVectOutputData.size())
{
if( iunOperationOutputIndex< gVectOutputData[iunOperationIndex].size())
{
owszInformation=
&gVectOutputData[iunOperationIndex][iunOperationOutputIndex].wsInformation[0];
iReturn= 0;
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OUTPUT;
}
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OPERATION;
}
return iReturn;
}
SetOperationOutputFileName
Description
Set the name of the output file of a given output parameter of a given operation.
Syntax
int SetOperationOutputFileName(const unsigned int iunOperationIndex, const unsigned int
iunOperationOutputIndex, const wchar_t* iwszFileName)
iunOperationIndex: Index of the operation.
iunOperationInputIndex: Index of the output parameter.
iwszFileName: Name of the output file.
Page 92 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Example
{
int iReturn= 0;
if( iunOperationIndex< gVectOutputData.size())
{
if( iunOperationOutputIndex< gVectOutputData[iunOperationIndex].size())
{
gVectOutputData[iunOperationIndex][iunOperationOutputIndex].wsFilename.assign(iwszFilen
ame);
iReturn= 0;
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OUTPUT;
}
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OPERATION;
}
return iReturn;
}
GetOperationOutputData
Description
Get a string containing the value of a given output parameter of a given operation.
Syntax
int GetOperationOutputData(const unsigned int iunOperationIndex, const unsigned int
iunOperationOutputIndex, wchar_t*& iwszData)
iunOperationIndex: Index of the operation.
iunOperationInputIndex: Index of the output parameter.
iwszData: String containing the value of the output parameter.
Example
{
int iReturn= 0;
if( iunOperationIndex< gVectOutputData.size())
{
if( iunOperationOutputIndex< gVectOutputData[iunOperationIndex].size())
{
owszData=
&gVectOutputData[iunOperationIndex][iunOperationOutputIndex].wsData[0];
iReturn= 0;
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OUTPUT;
}
}
else
{
iReturn = OPT_PLUGIN_ERROR_UNKNOWN_OPERATION;
}
return iReturn;
}
Features Page 93 of 179
GetErrorDescription
Description
Return the error description for an error number.
Syntax
int GetErrorDescription(const int inError, const wchar_t*& owszDescription)
Example
{
int nReturn = 0;
if (inError <= 0 || inError > gwsErrorDescription.size())
{
nReturn = -1;
owszDescription = gwsErrorDescription[OPT_PLUGIN_ERROR_UNKNOWN_ERROR].c_str();
}
else
{
owszDescription = gwsErrorDescription[inError].c_str();
}
return nReturn;
}
RunOperation
Description
Run a given operation.
Syntax
int RunOperation (const unsigned int iunOperationIndex, CPluginProgress* ipProgress)
iunOperationIndex: Index of the operation.
ipProgress: Object of type CPluginProgress used to have information about the progress of the
operation.
The abstract class CPluginProgress will have a method to refresh the percentage of progress of the
operation:
class CPluginProgress { virtual int Progress(const double& idProgress) = 0; };
Creating Camera Post Processing
1. Save your current project.
2. Close SPEOS CAA V5 Based software.
3. Copy your specific .dll.
4. Paste them in the ...\OPTIS\Plugins directory.
5. Launch SPEOS CAA V5 Based software.
6. Click Camera Post Processing icon .
7. Set parameters see page 94.
8. Click OK.
Page 94 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
9. The processed image is displayed.
Camera Post Processing parameters
Operation
Two example operations are available: Distortion correction see page 95 and Bird's eye view see page
98.
Image
The selected image is the one that will be post processed.
Camera parameters
The Camera parameters input is a .txt file including Camera parameters.
Design Table
A design table can be selected.
OPTIS DVS3 Plugin example
The PluginOPT_DVS3 plugin is a plugin of DVS3 type. It includes both operations: Distortion correction
see page 95 and Bird's eye view see page 98.
The PluginOPT_DVS3 plugin implements and exports methods see page 84.
It has been developed in C++ with Visual studio 2005 and
The PluginOPT_DVS3 plugin contains the following files:
PluginOPT_DVS3.vcproj Visual studio project.
Camera.h, .cpp Defines a class used to manage camera properties.
InputData.h, .cpp Defines a class to store all the input data for the remove
camera lens distortio operation.
InputDataBirdsEye.h,.cpp Defines a class to store all the input data for the bird's eye
Features Page 95 of 179
view operation.
Math.h, .cpp Contains some basic math function and Vector and Matrix
class.
PluginOPT_DVS3.h,.cpp Contains all methods.
stdafx.h,.cpp
errors.h
Description of data defined in the PluginOPT_DVS3.h file
The gVectInputData vector stores all information about input parameters of each operation.
std::vector<std::vector<InputDataStruct>> gVectInputData;
It uses a structure of InputDataStruct type.
typedef struct {
std::wstring wsDescription;
std::wstring wsType;
std::wstring wsGroup;
std::wstring wsData;
} InputDataStruct;
The gVectOutputData vector defined in the PluginOPT_DVS3.h stores all the information about
input parameters for each operation.
std::vector<std::vector<OutputDataStruct>> gVectOutputData;
It uses a structure of OutputDataStruct type.
typedef struct {
std::wstring wsDescription;
std::wstring wsType;
std::wstring wsData;
std::wstring wsFilename;
std::wstring wsInformation;
} OutputDataStruct;
The gVectOperationDescription vector contains description of each operation: Remove distortion,
Bird's eye view.
std::vector<std::wstring> gVectOperationDescription;
The gwsPluginType string contains the type of the plugin: DVS3.
std::wstring gwsPluginType;
The gwsPluginDescription string contains the description of the plugin: DVS3 Plugin example.
std::wstring gwsPluginDescription;
The gwsGUID contains the GUID of the plug in.
std::wstring gwsGUID=
L"{FF82B1DF-961A-4632-9B0E-D8CC8FA3A0A4}";
All data are set when the plugin is loaded.
Distortion correction
With Distortion correction you can correct camera lens distortion.
Input parameters
This operation requires two input parameters.
//Input data 1
InputDataStruct InputData;
InputData.wsDescription = std::wstring(L"Image");
Page 96 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
InputData.wsType = std::wstring(L"feat:png");
InputData.wsGroup = std::wstring(L"Input");
InputData.wsData = std::wstring(L"");
vectInputData.push_back(InputData);
//InputData 2
InputData.wsDescription = std::wstring(L"Camera parameters");
InputData.wsType = std::wstring(L"file:txt");
InputData.wsGroup = std::wstring(L"Input");
InputData.wsData = std::wstring(L"");
vectInputData.push_back(InputData);
The first input data is a .png image file coming from a SPEOS CAA V5 Based feature.
The wsData string will be filled by the caller by using the SetOperationInputData function.
The second input data is a .txt file which includes information about the camera used to generate the
.png image file defined above.
The file format is:
Header Contains the file version.
Real camera focal Focal of the camera.
Real camera sensor size horz Physical size of the imager of the camera (in mm).
Real camera sensor size vert
Real camera field angle mid, real camera field
angle end
Two angles used to define camera lens distortion: the
first one is located near the middle of the field of view
and the other one for the maximum object angle
Real camera image size mid, real camera
image size end
It's the distance to the center of the imager of the
camera for the 2 angles describes above (value are in
mm): It allows to evaluate camera distortion
Virtual camera horz. field of view Maximum field of view angle. It's the total angle (it
allows to limit the field of view of the original image)
Virtual camera horz. pixels Horizontal resolution of the final image
Virtual camera horz. field of viewal camera
vert. pixels
Vertical resolution of the final image
All angles are in degrees.
The camera lens distortion is computed using the real camera real camera field angle mid, real camera
field angle end and real camera image size mid, real camera image size end.
The distance to the center of the imager according to the object angle Theta is given by the following
formula: Theta*Theta*Slope + intercept*Theta.
Slope is the slope of the line passing through points (real camera field angle mid, real camera image
size mid/ real camera field angle mid) and (real camera field angle end, real camera image size end/
real camera field angle end).
Intercept is the intersection of the previous line with the ordinate axis.
RunOperation function
In the RunOperation function we load the input image and the camera parameter file.
To do this we create a CInputData object.
A CinputData object includes a CCamera object.
Features Page 97 of 179
Resolution of the camera is not defined in the camera parameter file, it's given by the resolution of
the input .png image.
If the virtual camera horz. field of view is higher than the maximum object angle of the input picture,
this parameter is not taking into account.
Then we correct distortion using the PositionToDistordedPixel function of the CCamera object.
For each point of the output image (without distortion) we compute associated position (in pixel
coordinates) in the input image taking into account distortion, and we copy the value of the input pixel
to the output image.
Output parameters
The distortion correction operation requires an output parameter.
//OutputData 1
OutputDataStruct OutputData;
OutputData.wsDescription= std::wstring(L"Image result");
OutputData.wsType= std::wstring(L"file:png");
OutputData.wsFilename= std::wstring(L"");
vectOutputData.push_back(OutputData)
;
The output parameter is a .png image file.
The wsFilename will be defined by the caller by using the SetOperationOutputFileName function.
The input and output vectors are added to the global input and output data.
//Add Input data to global vector
gVectInputData.push_back(vectInputData);
//Add Output data to global vector
gVectOutputData.push_back(vectOutputData);
Example
Page 98 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Distorted image
After the use of the distortion correction operation
Bird's eye view
With Bird's eye view you can compute a bird's eye view of a car using images coming from four wides
angles cameras arranged around the car.
Input parameters
Bird's eye view requires five input parameters.
//Input data 1
InputData.wsDescription = std::wstring(L"Front");
InputData.wsType = std::wstring(L"feat:png");
InputData.wsGroup = std::wstring(L"Image");
InputData.wsData = std::wstring(L"");
vectInputData.push_back(InputData);
//Input data 2
InputData.wsDescription = std::wstring(L"Right");
InputData.wsType = std::wstring(L"feat:png");
InputData.wsGroup = std::wstring(L"Image");
InputData.wsData = std::wstring(L"");
vectInputData.push_back(InputData);
//Input data 3
InputData.wsDescription = std::wstring(L"Left");
InputData.wsType = std::wstring(L"feat:png");
InputData.wsGroup = std::wstring(L"Image");
InputData.wsData = std::wstring(L"");
Features Page 99 of 179
vectInputData.push_back(InputData);
//Input data 4
InputData.wsDescription = std::wstring(L"Back");
InputData.wsType = std::wstring(L"feat:png");
InputData.wsGroup = std::wstring(L"Image");
InputData.wsData = std::wstring(L"");
vectInputData.push_back(InputData);
//InputData 5
InputData.wsDescription = std::wstring(L"Camera parameters");
InputData.wsType = std::wstring(L"file:txt");
InputData.wsGroup = std::wstring(L"Input");
InputData.wsData = std::wstring(L"");
vectInputData.push_back(InputData);
The first four input data are .png image files coming from a SPEOS CAA V5 Based feature.
These images are obtained respectively by the wide-angle camera placed at the front, right, left, and
behind the car.
The wsData string of each image will be filled by the caller by using the SetOperationInputData
function.
The second input data is a .txt file which includes information about the four cameras used to generate
the four .png images.
The file format is:
Header Contains the file version
Focal of camera front Focal of the camera
Sensor horz. size, sensor vert. size of
camera front
Physical size of the imager (in mm)
Field angle mid, field angle end of camera
front
Data for distortion (see distortion correction plugin)
Image size mid, image size end of camera
front
Data for distortion (see distortion correction plugin)
Origin X, Y, Z of camera front Origin of the camera (in mm) (as defined in the
SPEOS CAA V5 DVS workbench)
Horz axis X, Y, Z of camera front Horizontal axis of the camera (axis of the SPEOS CAA
V5 camera : keep the same direction as in SPEOS
CAA V5)
Vert axis X, Y, Z of camera front Vertical axis of the camera (axis of the SPEOS CAA
V5 camera: keep the same direction as in SPEOS CAA
V5)
...... data for camera Right, left, back. Data for the 3 other cameras
F, f, R, r, L, l, B, b, b', z Data for definition of ground area around the car (in
mm, see image below)
Line thickness
Image with, height Final image horizontal and vertical resolution (vertical
direction is along the length of the car)
Car image file name Filename of a bird's eye view of the car
Page 100 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
The image must only include the car (no blank area around the car) you can view the picture below:
Features Page 101 of 179
Definition of the ground area
Bird's eye view of the car
RunOperation function
In the RunOperation function we load the four input images and the camera parameter file.
To do this we create a CInputDataBirdsEye object. A CInputDataBirdsEye object includes a table of four
CCamera objects.
Resolution of the cameras is not defined in the camera parameter file, it's given by the resolution of
the input .png image.
For each camera we build the homography matrix taking into account the intrinsic parameter of the
camera (including focal) and the extrinsic parameter of the camera (taking into account the position
and direction of the camera).
We use the BuildHomographyMatrix function of each CCamera object. Homography matrix H is given
by the following formula:
H= Mi*[R RT]
Where Mi is the matrix of intrinsic parameters (in mm unit)
R is the rotation matrix between the world base and the camera base
T is the translation matrix between the world origin and the camera origin.
With the homography matrix you can compute the camera coordinates of any point in the 3D scene.
For each pixel of the ground area we search the associated camera using the GetCameraIndex
function.
That's why parameters of the camera in the camera parameter file must always be entered in the same
order: Front, Right, Left, Back.
Page 102 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Then we compute the image coordinates for this ground position by using the WorldToImage function
of the CCamera object found with the GetCameraIndex function.
We remove distortion with the PositionToDistordedPixel and copy the value of the pixel found to the
ground pixel.
Output parameters
The Distortion correction operation requires an output parameter.
//OutputData 1
OutputData.wsDescription= std::wstring(L"Image result");
OutputData.wsType= std::wstring(L"file:png");
OutputData.wsFilename= std::wstring(L"");
vectOutputData.push_back(OutputData)
;
The output parameter is a .png image file.
The wsFilename will be defined by the caller by using the SetOperationOutputFileName function.
The input and output vectors are added to the global input and output data.
//Add Input data to global vector
gVectInputData.push_back(vectInputData);
//Add Output data to global vector
gVectOutputData.push_back(vectOutputData);
Features Page 103 of 179
Example
Page 104 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Features Page 105 of 179
Four wide angle images
Bird's eye view mosaic obtained with plugin
Update
Update toolbar
Assembly Update (See CATIA V5 User's Documentation)
Local Update see page 106
External Update see page 106
Network Update see page 109
Page 106 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Local Update command
1. Select the feature to be updated.
2. Click on the Update icon . The feature is updated.
Note that this command works only for SPEOS CAA V5 Based feature. The following warning appears if
this command is applied on a non SPEOS CAA V5 Based feature.
External Update command
This command allows an external update of a Direct Simulation or an Inverse Simulation keeping
CATIA V5 available for design. It also works with an Isolated simulation created by the Isolated And
Export see page 51 command.
See Limitations.
Features Page 107 of 179
1. Select the simulation feature to be updated.
2. Click on the External Update icon .
The SPEOS Core application appears with the exported project opened. A new simulation appears
in the specification tree of CATIA V5.
Page 108 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
3. Select the simulation in SPEOS Core.
4. Click the update icon.
Features Page 109 of 179
The simulation runs keeping CATIA V5 available.
5. Stop the simulation by double clicking on the running simulation.
6. At the end of the simulation, Expand the new simulation.
The results are available from CATIA V5.
Network Update command
With Network Update you can update a Direct Simulation or an Inverse Simulation over the network. It
also works with an Isolated simulation created by the Isolated And Export see page 51 command.
See Limitations.
From SPEOS CAA V5 Based, a Product including a simulation needs to be loaded.
After having a simulation selected, click on the Network update icon .
The Distributed Computing simulation is launched on the first Simulation Spooler of the list defined
in the Simulation Spoolers Status panel.
Page 110 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Note that it is then possible to observe the simulation in the Simulation Spoolers Status panel by
clicking the Simulation Spoolers Status icon .
Tools
Tools toolbar
Catalog Browser (See CATIA V5 User's Documentation)
Customer Portal (http://support.optis-world.com/portal/support/support.asp)
Online Library (http://www.optis-world.com/download_software_libraries.asp)
Online Upgrade
(http://www.optis-world.com/download_software_try.asp?soft_id=2)
SPEOS CAA V5 Based Homepage
(http://www.optis-world.com/speoscaav5/Speos_CAA_V5_1.asp)
License Portal (http://www.optis-world.com/licences.asp)
Online Support (http://support.optis-world.com/portal/support/support.asp)
Photometric Calc
SPEOS input files see page 117
SPEOS output files see page 117
SPEOS Core command
A simulation can run independently of CATIA V5, freeing the CATIA V5 license for another design or
another designer.
A simulation can run independently of CATIA V5, freeing memory to perform memory consuming
simulation.
A simulation can run on a computer without CATIA V5, (i.e. in a cluster).
Features Page 111 of 179
How to use the SPEOS Core command?
1. Click on the SPEOS Core icon . The panel of SPEOS Core appears.
Note that contrary to External Update the current project is empty.
Note that SPEOS Core can also be launched from the Windows Start Menu.
Page 112 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
2. From the File, Open menu, select a .sv5 file exported by the Export Simulation command .
The project is opened.
Features Page 113 of 179
3. Select the simulation in the tree.
4. Click the update button to launch the simulation.
Note that as from CATIA add-ins, the simulation can be launched over a cluster thanks to the
Network Update command .
Page 114 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
5. From the explorer, open the project folder to access to the result files.
It is really advised to play with the number of threads. The configuration file of SPEOS Core.exe allows
you to pilot the use mode of the processor but today there is no any interface integrated in the
application. That's why it is needed to make modification manually.
The configuration file is located in the following folders:
Within Windows Vista:
C:\Users\username\AppData\Roaming\OPTIS\SPEOS_CAA_V5_Based_VX\SPEOS_CAA_V5_Based.c
fg
Within Windows XP:
C:\Documents and Settings\username\Application
Data\OPTIS\SPEOS_CAA_V5_Based_VX\SPEOS_CAA_V5_Based.cfg
Close SPEOS Core.exe then edit the path to replace the following line:
<Thread-Mode>Thread-Mode-Automatic-Forced</Thread-Mode>
by the both following lines:
<Thread-Mode>Thread-Mode-Value-Forced</Thread-Mode>
<Thread-Number>3</Thread-Number>
The replace the 3 value by the wanted thread number.
Also note that if instead of :
<Thread-Mode>Thread-Mode-Value-Forced</Thread-Mode>
you write down:
<Thread-Mode>Thread-Mode-Value-As-Default</Thread-Mode>
When exporting, SPEOS Core.exe will run on the thread number specified in the CATIA options
(and saved in the .sv5 file).
Simulation Spoolers Status command
The Simulation Spooler Status is running within the user session.
The Simulation Spooler Status checks information every 5 seconds. However to avoid network
overbooking, spooler and servers are communicating every 30 seconds.
Loading Simulation Spoolers Status
From OPTIS Labs® software
Click Simulation Spoolers Status .
From the Start menu
Click on the Start menu, All Programs, OPTIS, Distributed Computing, Simulation Spoolers Status.
Features Page 115 of 179
The Simulation Spoolers Status panel briefly appears before the tray icon is added on the bottom
right of the screen. Double-click on it.
Menus
File
Exit: Closes Simulation Spoolers Status.
View
Refresh: Updates information displayed in Simulation Spoolers Status.
Simulations
Stop selected: Stops the selected running simulation on each Simulation Server. For direct and inverse
Monte Carlo simulations, the obtained results are uploaded and merged.
Stop selected and merge: Stops the selected running simulation on each Simulation Server. Results of
finished simulations are uploaded and merged.
Remove selected: Removes the selected spooled simulation.
Abort all: (only from Simulation Spooler) Each Simulation Server stops simulating and is restarted. No
intermediate results are computed.
Clean historic: Reorders the simulation list by moving up the selected spooled simulation, giving it a
higher priority.
Move up: Reorders the simulation list by moving up the selected spooled simulation, giving it a higher
priority.
Move down: Reorders the simulation list by moving down the selected spooled simulation, giving it a
lower priority.
Configuration
Configurations: Adds or removes Simulation Spooler to Simulation Spoolers list. The Simulation Client
always launches Distributed Computing simulation on the first Simulation Spooler of the list.
Simulation Spoolers
The Simulation spoolers list shows the following information about the Simulation Spoolers defined in
the Configurations.
Simulation Spooler name
Name of the Simulation Spooler.
Number of servers
Number of running Simulation Servers connected to the Simulation Spooler.
Note that for more information a tooltip displays the Simulation Servers related to the Simulation
Spooler selected. The paused server are taking account into the Number of server(s).
Simulation
[status]
Simulating: Simulation is running on each Simulation Server.
Finished: Simulation is completed; results are available on the Client Computer.
Spooled: Simulation is on hold until its turn.
Aborting: Simulation is aborted.
Stopping: Simulation is stopping on each Simulation Server; results are then uploaded and merged on
the Simulation Spooler.
Page 116 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
[computer]
Indicates the name of the Simulation Client.
[user]
Gives the name of the user who launched the Distributed Computing simulation.
[launch date]
Date when the Distributed Computing simulation was spooled.
[end date]
Date when the Distributed Computing simulation was finished.
Simulation progress
The Simulation progress shows the following information about the Distributed Computing simulation
running on a selected Simulation Spooler.
Spooler name
Name of the Simulation Spooler.
Simulation status
Displays the current status of the simulation and the total achievement percentage when it is running.
Simulation duration
Displays the Distributed Computing simulation duration since the launch date.
Servers
The list of servers is shown with the following information.
Server name
Simulation status: Displays the achievement percentage of the simulation on a server.
Note that sometimes it takes some times for the display's upgrade.
At the end of the simulation, when the Simulation Spoolers Status is running, the Recently finished
simulation panel appears and let know which simulation is finished.
Features Page 117 of 179
SPEOS input files & SPEOS output files commands
1. Activate a product document.
2. Click SPEOS input files icon . The SPEOS input files folder associated to the active Product is
opened in the Explorer.
Page 118 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
3. Click SPEOS output files icon . The SPEOS output files folder associated to the active Product is
opened in the Explorer.
Results
Viewers toolbar
Virtual Photometric Lab
Virtual Human Vision Lab
Virtual Reality Lab
Features Page 119 of 179
HTML Report
The HTML report allows the user to read the analysis report.
Page 120 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Projected Grid result
This Projected Grid is the result of an Interactive Simulation. It is the projection of grid points
representing the sensor pixels on the simulation geometry. This projection is done following to the
distortion of the camera.
To get optimal performances while the grid generation, set the Smart Engine parameter of the
Interactive Simulation to a value superior to 7.
It is recommended to disable the Interactive Simulation before editing the geometry or the sensor. It
can be re-enabled after.
Features Page 121 of 179
SPEOS CAA V5 Based tree
At the end of an Interactive Simulation, a .OPTProjectedGrid result is available.
Page 122 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Properties panel > Projected Grid panel
A right-click on the result gives access to the Properties panel.
Grid connection
These parameters are also displayed in the SPEOS CAA V5 Based tree within the result feature.
Minimum distance tolerance
This parameter is the minimum distance for two adjacent pixels to be connected by a line.
Features Page 123 of 179
Maximum incidence
The default value is 85°. This is the maximum angle under the one two projected pixels should not be
connected.
Angle 45°: Connection
Angle 88°: No connection
The Maximum incidence allows to take into account the pixels distant to the camera.
Page 124 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Maximum incidence = 25°
Maximum incidence = 50°
Maximum incidence = 85°
Features Page 125 of 179
Maximum distance from camera
The default value is 5000 mm. This is the maximum distance between a pixel and the camera. It allows
to limit the visualization at a specific distance of the camera.
Maximum distance from camera = 5 m
Maximum distance from camera = 2 m
Page 126 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Authorize connection between bodies
This is enable by default. This allows the user to decide if the connection between bodies are allowed or
not.
Authorize connection between bodies = enable
Authorize connection between bodies = disable
Grid display
Features Page 127 of 179
These parameters are also displayed in the SPEOS CAA V5 Based tree within the result feature.
Setting the graduation step values to zero does not display the grids.
Primary graduation step
Number of pixels between each primary graduation. The default value is 10.
Secondary graduation step
Number of pixels between each secondary graduation. The default value is 1.
To lighten the visualization it is recommended to increase the graduation step parameters when the
grid resolution becomes high.
Page 128 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Primary graduation step = 10
Secondary graduation step = 1
Primary graduation step = 40
Secondary graduation step = 5
Display graduation text
This is the label display of the pixels lines. It is enable by default.
Features Page 129 of 179
Display graduation text = enable
Display graduation text = disable
Highlighted X line, Highlighted Y line.
This is the possibility to highlight a pixels line. It is disable by default.
Page 130 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Properties panel > Graphic panel
A right-click on the result gives access to the Properties panel.
The Transparency can be changed from the Graphic tab.
See also limitation for the grid.
XMP result
Parameter first options within the Customizing General Panel see page 153.
SPEOS CAA V5 Based tree
XMP results are available from the SPEOS CAA V5 Based tree.
XMP menu
By a right-click on the .xmp file, the following contextual menu appears.
Properties panel
A right-click on the result gives access to the Properties panel.
Features Page 131 of 179
Graphic panel
The Transparency can be changed from the Graphic tab.
Parameters panel
Show results in 3D: Results can be showed in the 3D view.
XMP Visualization
Inverse simulation
Page 132 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Double-clicking on the XMP result in the tree or in the 3D view allows the user to open the file with the
Virtual Photometric Lab. The visualization within CATIA is managed by edition from the Virtual
Photometric Lab. The synchronization is simultaneous with the file's save.
HDRI result
Parameter first options within the Customizing General Panel see page 153.
SPEOS CAA V5 Based tree
At the end of an Inverse Simulation photometric or colorimetric levels are available for measurement
as well as an HDRI image.
Features Page 133 of 179
HDRI menu
By a right-click on the .png file, the following contextual menu appears.
Properties panel > Graphic panel
A right-click on the result gives access to the Properties panel. The Transparency can be changed from
the Graphic tab.
HDRI visualization
A double-click on the HDRI result opens Virtual Reality Lab.
Page 134 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
PNG result
The Digital Vision and Surveillance package is required (SV5_DVS1 & SV5_DVS2).
SPEOS CAA V5 Based tree
PNG results are available from the SPEOS CAA V5 Based tree.
XMP menu
By a right-click on the .png file, the following contextual menu appears.
Properties panel
A right-click on the result gives access to the Properties panel.
Graphic panel
The Transparency can be changed from the Graphic tab.
Features Page 135 of 179
PNG Visualization
A double-click on the PNG result in the specification tree shows the colored result which takes into
account the Camera' sensitivity as well as the White balance mode.
Page 136 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
TUTORIAL
This tutorial aims at giving you a feel about using the camera sensor with Digital Vision And
Surveillance.
CATIA R19, SV5_DVS1, SV5_DVS2 and SV5_DVS3
50 minutes
Lesson 1: Preparing data
1. Copy SV5_Tutorials_DVS_R19V11.zip
(http://portal.optis-world.com/documentation/UG/SV5/ZIP/SV5_Tutorials_DVS_R19V10.zip)
(courtesy of DASSAULT SYSTEMES) in a local directory.
2. Extract files.
Lesson 2: Creating a Camera Sensor
1. Open GS_DVS.CATProduct.
2. Click on the Camera Sensor icon . The Camera Sensor Definition panel appears.
3. Select the Point.Camera.Origin point to define the origin and Line.Camera.X and Line.Camera.Y
lines to define respectively the horizontal and vertical directions.
4. Set the Focal Length at 1.8mm, the F Number at 2 and the Imager Distance at 20mm.
5. Browse to define the Transmittance by selecting CameraTransmittance.spectrum in SPEOS input
files folder.
6. Browse to define the Distortion by selecting CameraDistortion.OPTDistortion in SPEOS input files
folder.
7. Set the Sensor's Width and Height to respectively 3.6mm and 2.7mm and the White balance mode
to Grey world.
8. Set the Red, Green and Blue Sensor sensitivity to respectively CameraSensitivityRed.spectrum,
CameraSensitivityGreen.spectrum and CameraSensitivityBlue.spectrum.
The Camera Sensor is displayed in the 3D view.
Tutorial Page 137 of 179
9. Click on Reverse direction to adjust the camera's orientation.
10. Click OK.
The feature is added in the specification tree in Sensors section.
11. Edit the properties of Camera sensor.1.
12. Click on More to select the Parameters tab.
13. Set the Visualization radius to 200 mm.
14. Click OK.
Lesson 3: Creating an Interactive Simulation using a Camera Sensor
SV5_DVS1 only
1. Click on the Interactive Simulation icon . The Interactive Simulation Definition panel appears.
2. Select the following Geometries:
Page 138 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Ground and Body located in the geometrical set Body of the part GS_DVS_Car
TrafficConeOrange and TrafficConeWhite bodies of the parts TrafficCone.1, TrafficCone.2 and
TrafficCone.3.
3. Select Camera Sensor.1 as Sensors.
4. Click OK.
The Interactive Simulation is displayed in the 3D View.
The displayed grid corresponds to the projection of the camera's pixels on the selected geometries.
5. Interactive simulation.1 has been added in the specification tree under the Simulations node.
6. Double-click on .OPTProjectedGrid result.
7. Click on More to access the Projected Grid tab.
Tutorial Page 139 of 179
8. Select Highlighted X line and Highlighted Y line.
9. Set the respective values to 320 and 240.
10. Click OK.
The two lines correspond respectively to the line between the 320th and 321st horizontal pixels
and the line between the 240th and 241st vertical pixels.
Page 140 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
11. Select GS_DVS_Car part, Camera geometrical, Line.OpticalAxis line, Angle parameter.
12. Set the value to 65 degrees.
The projection grid is now centered on the Traffic cone.
13. Edit the Project grid parameters.
14. Set the value of the Minimum distance tolerance parameter to 200 mm and 2000 mm.
Tutorial Page 141 of 179
15. Click on Apply to observe its influence on the projected grid.
Page 142 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
This parameter corresponds to the minimum distance for two adjacent pixels to be connected.
16. Set its value back to 20 mm.
17. Set the value of the Maximum incidence parameter to 70deg.
Tutorial Page 143 of 179
18. Click on Apply to observe its influence on the projected grid.
This parameter corresponds to the maximum angle between two lines Camera Sensor's/projected
pixel for two adjacent pixels to be connected.
19. Set its value back to 85deg.
20. Set the value of the Maximum distance from camera parameter to 2000 mm.
Page 144 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
21. Click on Apply to observe its influence on the projected grid.
This parameter corresponds to the maximum distance between a projected pixel and the Camera
Sensor.
22. Set its value back to 5000 mm.
Lesson 4: Creating an Ambient Source to model environment light (sky)
SV5_DVS2 only
1. Click on the Ambient Source icon . The Ambient Source Definition panel appears.
Tutorial Page 145 of 179
2. Select Uniform as type.
3. From the specification tree, select Zenith in the Ground geometrical set of the GS_DVS part.
4. Set 3000 cd/m² as Luminance.
5. Select Sky.spectrum as Spectrum.
6. Click OK.
The Ambient Source is added in the specification tree in Sources section.
The Ambient Source is displayed in the 3D view.
Lesson 5: Creating an Inverse Simulation using a Camera Sensor
SV5_DVS2 only
1. Click the Inverse Simulation icon . The Inverse Simulation Definition panel appears.
2. Select Ambient source.1 as Sources.
3. Select the same geometries as the one used for the Interactive Simulation as Geometries.
4. Set Camera sensor.1 as Sensor.
5. Click OK.
The Inverse Simulation is added in the specification tree in the Simulations section.
6. Edit the properties of Inverse simulation.1.
7. Select Inverse simulation tab.
8. Deactivate Monte Carlo algorithm and Anti-Aliasing parameter.
9. Click Apply.
10. Click OK.
11. Select Inverse simulation.1 in the specification tree.
12. Click SPEOS CAA V5 Based update button . A panel indicates the progress of the simulation.
13. Click OK.
The Inverse simulation.1 is added in the specification tree in the Simulation section.
Page 146 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
The xmp result is displayed in the 3D view.
Lesson 6: Analyzing results
SV5_DVS2 only
1. Open specification tree.
2. Double-click on XMP result.
The Virtual Photometric Lab window appears with result.
Tutorial Page 147 of 179
3. Look at the layers: tree layers are available that correspond to the response of the Red, Green and
Blue pixels.
Page 148 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Tutorial Page 149 of 179
4. Double-click on the PNG result in the specification tree.
This colored result takes into account the Camera' sensitivity, the White balance mode as well as
the Gamma correction.
Lesson 7: Creating a Camera Post Processing
SV5_DVS3 only
1. Save the project and close SPEOS CAA V5 Based software.
2. Copy and extract SV5_Tutorials_PluginExample.zip
(http://portal.optis-world.com/documentation/UG/SV5/ZIP/SV5_Tutorials_PluginExample.zip) in a
local directory.
3. Open ...\SPEOS input files directory.
4. Copy PluginOPT_DVS3_XX .dll.
Only the dll corresponding to your operating system is required.
5. Paste them in the ...\OPTIS\Plugins directory.
6. Launch SPEOS CAA V5 Based software.
7. Open DVS.CATProduct.
8. Click Camera Post Processing icon .
9. Select Distorsion correction (DVS3 Plugin example) as Operation.
Page 150 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
10. Select GS_DVS.Inverse simulation.1.Camera sensor.1.png generated in the lesson 6 as Image.
11. Browse for camera_parameters.txt in the SPEOS input files folder to set the Camera parameters.
12. Click OK.
A new Camera post processing simulation has been added to the tree.
13. Update the simulation.
14. Double-click on the PNG result in the specification tree.
The image distortion due to the optics has been compensated.
Tutorial Page 151 of 179
Page 152 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
CUSTOMIZING
Customizing SPEOS Licensing Panel
Select SPEOS Licensing panel.
This tab gives useful information about SPEOS CAA V5 Based license status.
Server information
The indicated server is the license server the OPTIS License Manager is connected to.
Send license request
This button allows the user to make a license request.
List of available configuration
ID: Configuration ID.
Configuration: List of packages and options.
Expiry date.
Tokens: Number of tokens for a floating license. 0 corresponds to the nodelock configuration.
Tokens in use.
Customizing Page 153 of 179
Customizing General Panel
Select General Panel.
This tab allows the configuration of some behavior of SPEOS CAA V5 Based concerning result file and
simulation.
Result
Auto launch at end of simulation allows the automatic launch of the results viewer at the end of
simulation.
Increment name if file already exists. allows the automatic increment of the result file name, thus
when this option is selected, old result file will not be overwritten when a simulation is updated.
Result concatenator separator allows the choice of the separator automatically added in the result
file name.
Interactive simulation report impact. allows the addition of information related to each impact
(position, normal, surface state...).
Show results in 3D: The display of XMP results can be enabled or disabled.
Show null values of results as transparent in 3D: The display of XMP results can take advantage of
image transparency for null values. Be aware that the black color has to be the one which is null to
make it works.
Page 154 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Simulation
Thread number defines the number of thread used by Direct and Inverse simulations. The optimum
value for best performance is equal or a little bit greater than the number of virtual processors, 2 or 3
for a Hyperthreading processor, 4 or 5 for a dual processors with hyperthreading. (see also
MultiThreading see page 160).
Feature edition
Auto alphabetical sort selection list allows reordering the list of selections by alphabetical order, for
example during simulation definition when selecting sources, geometries or sensors.
Display a warning when
Display a warning when allows the user to set different SPEOS CAA V5 Based options.
Customizing Page 155 of 179
Customizing Meshing Panel
Select Meshing Panel.
The parameters of this panel define the default parameters for simulations and control display of 3D
sensors.
Page 156 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Note that these parameters can be overwritten thanks to the simulations properties. Sag: Defines the
maximum distance between a bar and the object to tessellate. Angle: Defines the maximum angle
between the normal at each bar end. Step: Defines the maximum length of a bar.
When Proportional is selected for Sag or Step sections, the Sag or the Step values are calculated for
each faces by dividing the size of the faces by the the value of the ratio, this options allows you to
define an adaptative value of the sag or the step. When Fixed is selected for Sag or Step sections, the
Sag or the Step values are directly the given value in mm.
Customizing Page 157 of 179
Customizing Simulation Presets
Select Simulation Presets Panel.
This tab allows managing the Preset database and notably:
Displaying the list of Presets available in the database, with the possibility to filter the Presets.
Displaying a Preset' details.
Copying a Preset and making a new one from it.
Renaming a Preset.
Suppressing a Preset.
Editing a Preset's parameters.
Preset list
The Preset list displays all the Presets of the database. Presets are ordered by library type (Global then
User) then by alphabetical order.
Page 158 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
The user can then select a Preset in the list, activating the available commands and showing the details
of the selected Preset. The user has the possibility to filter the displayed Presets by library type and by
Preset type (direct, inverse,...).
Preset details
When a Preset is selected in the list, its details are showed:
Type of Preset
SPEOS CAA V5 Based version used to generate it
The user can also edit its settings and display all the parameters contained in the Preset.
A panel appears containing two tabs:
One for the general simulation parameters.
The other for the parameters specific to the type of simulation.
Any modification done to a parameter will be applied to the Preset after clicking on the OK button.
This will automatically set all the simulations using the modified Preset to not be up to date.
Customizing Page 159 of 179
Available commands
When a Preset is selected in the list, the available commands are showed:
Copy Preset: allows copying a Preset to a new one.
Rename: allows rename an existing Preset.
Delete: allows suppressing an existing Preset.
All copied Presets are created in the user library.
Renaming a Preset will automatically set all the simulations using it to not be up to date.
The link between a simulation and a Preset is removed when deleting the Preset.
Copying, deleting and renaming a Preset is only possible for user library type Presets.
Default Presets
It is possible to define a default Preset for each simulation type that will be applied during the creating
of a new simulation.
For each simulation, the user will find:
The name of the Preset applied by default (<None> if there is no selected Preset).
A button to select or change the default Preset.
The information about the Preset link status.
If a default Preset is not found, the Not found status and the GUID of the missing Preset are displayed.
No Preset with this status will be applied to the new simulations.
Page 160 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
To change the default Preset, the user needs to activate the selection command and then select a
Preset in the list or click on the None button to remove the default Preset.
Multithreading
The power of processors and computers still continues to grow (remember the Moore law):
Single processors (1 physical chip) include the Hyperthreading technology: this means that the
physical processor is seen as 2 virtual processors.
Multi-processors: Some computer can include more than 1 processor. In the past these computers
were dedicated to server but now there are more used as desktop computers.
By default Windows applications are monothread, this mean that they use only one processor.
Windows and Windows applications can take advantage of this hardware. When an application can
have many virtual or physical processors, it can dispatch a long calculation on all these processors. The
application should manage the cooperative access to data to avoid data incoherence. Comparing to the
previous version, the performance could be the following on a hyperthreading processor:
1 thread: Gain between 5% and 15% (this gain comes from a different management of the
progress bar, the periodic saving of maps and the simulation).
2 thread: Gain between 20% and 35% (as it is not really 2 physical processors and as SPEOS
should manage the cooperative access to data, the gain is lower than 50%).
Customizing Page 161 of 179
With a dual processors computer, the gain could be up to 70%. The gain is more important with
complex system with a lot of geometry (the gain is very low if the system is only composed of a
rectangular source). SPEOS CAA V5 Based is now able to take into account this hardware and to run
with many threads. In the propagation preferences you just have to enter the number of threads that
SPEOS will run for the simulation. Then when running a multithreading simulation you can check the
use of the processors by SPEOS using the Windows Task Manager:
If the system to simulate is too simple, for multithreaded simulations each thread will never work at
100% and adding threads may increase the simulation time (thread management).
Page 162 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
MISCELLANEOUS
Warning and Error messages
Code error management
Because it was not possible to identify main of the errors, the code error management has been
created. An interface allows the user to get information related to the errors.
SPEOS CAA V5 Based_Error_Lost.txt
The SPEOS CAA V5 Based_Error_Lost.txt file includes the log of the errors not treated by the
development team. It is saved in the ...\Application Data\OPTIS\SPEOS CAA V5 Based VXX folder of
the current user.
SPEOS CAA V5 Based_Error.txt
The SPEOS CAA V5 Based_Error.txt file includes the log of errors already known by the development
team but information will be used by them to analyze the error if needed.
Miscellaneous Page 163 of 179
Within SPEOS CAA V5 Based
Errors are displayed with a classical user interface.
Within SPEOS Core.exe
The error codes are also displayed within the SPEOS Core.exe.
Page 164 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Distributed calculation
The error codes are displayed in the SPEOS Distributed Server.
Error codes are written in the SDS.log file.
Error codes are displayed in the spooler status.
Warning: Some material properties...
This page describes the Some material properties can not be retrieved. material applied on Face is
involved. Update of the 3D visualization can solve the problem. warning.
Miscellaneous Page 165 of 179
When this warning message appears, it is because there is no material for the face selected by the
Source.
This message can appear when clicking a on a Source in the SPEOS CAA V5 Based tree.
What to do?
Click on Ignore.
Open the Source to check the selected geometry/face. Click on Cancel.
Select the geometry/face in the product tree.
Use the Apply material see page 5 icon and select a material.
Warning: Sorry, the license required for this simulation (VE3 or VE4)...
This page describes the Sorry, the license required for this simulation (VE3 or VE4) is not granted. The
simulation is parametrized without Monte Carlo algorithm. Either click Abort to modify involved input
parameter (s) or click Ignore to run the simulation with Monte Carlo algorithm warning.
When this warning message appears, it is because the license does not contain the VE3 or VE4
package.
This message can appear when launching an Inverse Simulation.
What to do?
Click on Ignore.
Right-click on the Inverse Simulation and select Properties.
Page 166 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Click on More and select the last Inverse simulation tab.
Set the Monte Carlo algorithm as true.
Warning: Functionality not supported
This page describes the Functionality not supported. HDRI background visualization is not supported in
current configuration. Minimum requirements :OpenGL Shaders activated in options, and compatible
graphic card with latest drivers.
When this warning message appears,
Check OpenGL Shaders activated in the CATIA options (Tools, Options, General, Display,
Performance, Miscellaneous).
If you graphic card is compatible with latest drivers (Please check the SPEOS CAA V5 Based
Installation Guide (http://support.optis-world.com/portal/documentation/documentation.asp)).
Miscellaneous Page 167 of 179
Warning: Invalid input parameters. Sensors
This page describes the Invalid input parameters. There is a name conflict between two or more
sensors. The result file will be overriden. Rename sensors so that there is no conflicts warning.
When this warning message appears, it is because there are two Sensors with the same name in a
Simulation.
Warning: Invalid input parameters. No optical properties...
This page describes the Invalid input parameters. No optical properties has been defined for XXX. Add
missing optical properties or Activate Authorize the use of Rendering properties as Optical Properties
for an Inverse Simulation warning.
This message appears when launching a simulation.
What to do?
In case of a direct simulation, add missing optical properties.
In case of inverse simulation, activate the Authorize the use of Rendering properties as Optical
Properties option.
FAQs
Simulation Spooler Status
Question:
How to resolved the Spooler not running status for a Simulation spoolers?
Answer:
If the Spooler is not running this is what to do to check what is wrong:
To be sure that it is the problem, check if there is a SDSM-status.xml file in the C:\Program
Files\Optis\Distributed\CurrentSimulation\SpoolerStatus\Name of the Spooler file.
If not go back to the computer of the Simulation Spoolers and select the Simulation Server tab in
the OPTIS Distributed Computing Properties (Have a look to the Installation Guide): activate the
Simulation Server in the Simulation Spooler.
Different Spooler's configuration
Question:
What is going on if I stop a Simulation Server?
Answer:
In Monte Carlo's configuration the simulation will probably only use results before the simulation
server's stop. In Determinist's configuration black lines will be on the results. Bypass: Ask the
Simulation Spooler to merge results by clicking on the Merge button in the Simulation Spoolers Status.
Question:
What is going on if I stop the Simulation Spooler?
Answer:
The current result will be lost and the simulation will be restart when the Simulation Spooler will be
restart.
Page 168 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
Question:
What is going on if I stop the Simulation Client?
Answer:
Nothing happens. After a restart it is possible to add new simulations and simulations' results finished
while the computer was switch off will be automatically download.
Question:
What is going on if I stop the Service while a running simulation?
Answer:
It depends which activated Simulation there are in the Service see answers below. Note that normally
the best is to wait for the end of the current simulation when the Service's stop is requested. But note
that Windows stops the Service's stop when the computer is shutting down.
Question:
What is going on if I remove the Simulation Spooler option even if there are already simulation in the
spooler?
Answer:
It is not possible to do it without stopping the Service.
What are the used vocabulary for photometry and radiometry units?
Diffuse Materials
The default max impact value has not been adapted for the simulation. In SPEOS CAA this value is
set by standard to 100, in SPEOS to 500 (…). For diffuse light guides with a length superior to 10
mm OPTIS suggests to specify a value of 10 000 to 50 000. In the simulation report the number of
absorbed rays do to max impact simulation can be seen (only in SPEOS CAA today).
It is not possible to get a precise information of the max diffusion via the 3D view. In order to get
smaller ray tracing times the max number of interactions and the amount of diffuse interactions is
drastically reduced. It gives only a very qualitative preview.
It is necessary to use exactly the same reference as given in the OPTIS Library; during production
is common to mix diffuse material with clear material or to add other components into the material
which can have a strong influence to the diffusion
It is necessary to control the injection parameters like temperature, pressure, (…) because they are
also influencing the material composition
Finally it is difficult to guarantee a uniform concentration of diffusion particles in complex light
guide shapes. Do the shape of the light guide the might be local difference in pressure, stream
velocity, (…) which are influencing the concentration of the particles.
Miscellaneous Page 169 of 179
Results of low quality with Inverse Monte Carlo Simulation
Take care that the Remove highest peaks filtering type is not the appropriate one for XMP with a lot of
noise and that Standard filtering gives much more better results.
Page 170 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
How to improve the precision of faces selecting
When some sources are emitting a lot of rays, it happens that faces behind the rays cannot be selected
without a huge zoom. To solve the problem, go to the CATIA options, General, Display, Performance
and set the Windows size for accurate picking to the value 1.
What is happening when having simultaneously rendering properties within CATIA and color from BRDF?
The texture becomes white and black and the color comes from the generated BRDF from the
rendering data of the material.
How to measure a distance between two pixels?
Use the CATIA measurement tool (from Assembly Design Workbench, Measure Between command)
and use the Picking point option for each of the both points to select.
Troubleshootings
Apply material command disappears from Material toolbar
Apply material command disappears from Material toolbar.
The command can be added manually in the toolbar by using Tools, Customize, Toolbars, selecting
Material toolbar, clicking Add commands and selecting Apply material
Information for Support
This is how to load information located on your computer and useful for us.
To check details regarding your computer, please select the Start -> Control Panel -> System ->
General command.
Miscellaneous Page 171 of 179
The following window appears. Please let us know details regarding your computer.
Page 172 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
From the Start menu, select All Programs/OPTIS/SPEOS CAA V5 Based V6.X/SPEOS CAA V5 Based
V6.X RXX. The software is launching and the following window appears.
To check which version of SPEOS CAA V5 Based you have, please select the Help/About SPEOS CAA
V5 Based command.
Miscellaneous Page 173 of 179
The following window appears. Please let us know details from this About SPEOS CAA V5 Based
panel.
It is possible to use Ctrl C from the About SPEOS CAA V5 Based panel and Ctrl V within Outlook to
give us this information.
To check which version of CATIA you have, please select the Help -> About CATIA V5 command.
Page 174 of 179 SPEOS CAA V5 Based Digital Vision & Surveillance User Guide
The following window appears. Please let us know circled details from this About CATIA V5 window.
To check which license you have, please select the Tools/Options command.
Miscellaneous Page 175 of 179
The following window appears. Please let us know details regarding the Licensing selection. Be
careful not to forget some modules from the List of available module.
INDEX
A
Adding optical properties to a material • 7, 8
Ambient source • 14
Ambient Source visualization • 28
Apply material command disappears from Material toolbar • 170
B
Bird's eye view • 94, 98
C
Camera Post Processing Interface • 84
Camera Post Processing parameters • 93, 94
Camera Post Processing principle • 84
Code error management • 162
Creating a Camera Sensor • 31, 40
Creating a Face Optical Properties • 6
Creating an Ambient Material • 5, 12, 47
Creating an Ambient Source with Environment type • 19
Creating an Ambient Source with Uniform type • 14
Creating an Interactive Simulation • 40
Creating an Inverse Simulation • 44
Creating Camera Post Processing • 93
CUSTOMIZING • 152
Customizing General Panel • 130, 132, 153
Customizing Meshing Panel • 56, 155
Customizing Simulation Presets • 68, 157
Customizing SPEOS Licensing Panel • 152
D
Distortion correction • 94, 95
Distortion curve • 33, 37
E
Editors • 5
Editors toolbar • 5
Example • 97, 103
Export Simulation command • 39, 52
External Update command • 105, 106
F
FAQs • 167
FEATURES • 5
Features parametrization for simulations • 39, 40, 44
G
GetErrorDescription • 93
GetOperationDescription • 86
GetOperationInputDescription • 87
GetOperationInputNb • 86
GetOperationInputType • 87
GetOperationNb • 85
GetOperationOutputData • 92
GetOperationOutputDescription • 89
GetOperationOutputInformation • 91
GetOperationOutputNb • 89
GetOperationOutputType • 90
GetPluginDescription • 85
GetPluginGUID • 85
GetPluginType • 84
H
HDRI result • 132
HTML Report • 119
I
Increment background exposure • 30
Information for Support • 170
Input parameters • 95, 98
Inverse Simulation - Determinist • 58, 59
Isolate And Export Simulation command • 39, 51, 106, 109
Isolate Simulation command • 39, 50
L
Lesson 1
Preparing data • 136
Lesson 2
Creating a Camera Sensor • 136
Lesson 3
Creating an Interactive Simulation using a Camera Sensor • 137
Lesson 4
Creating an Ambient Source to model environment light (sky) • 144
Lesson 5
Creating an Inverse Simulation using a Camera Sensor • 145
Lesson 6
Analyzing results • 146
Lesson 7
Creating a Camera Post Processing • 149
Loading Simulation Spoolers Status • 114
Local Update command • 105, 106
M
Menus • 115
Methods • 84, 94
MISCELLANEOUS • 162
Multithreading • 154, 160
N
Network Update command • 105, 109
O
Optical Properties • 5
Optical properties toolbar • 5, 165
OPTIS DVS3 Plugin example • 94
Output parameters • 97, 102
P
Parameterizing a simulation • 41, 43, 50, 54, 57, 61, 66, 83
Parameterizing a simulation - Simulation Presets • 43, 50, 68
Parameterizing a simulation - Texture Normalization • 65
Parameterizing a simulation - Weight • 57, 61
Parameterizing an Inverse Simulation • 57
Parametrization • 54
PNG result • 134
Projected Grid result • 120
R
Results • 118
RunOperation • 93
RunOperation function • 96, 101
S
Sensors • 31
Sensors toolbar • 31
SetOperationInputData • 88
SetOperationOutputFileName • 91
Simulation progress • 116
Simulation Spoolers • 115
Simulation Spoolers Status command • 114
Simulations • 39
Simulations toolbar • 39
Sources • 14
Sources toolbar • 14
SPEOS Core command • 110
SPEOS input files & SPEOS output files commands • 110, 117
T
Tools • 110
Tools toolbar • 110
Troubleshootings • 170
TUTORIAL • 136
U
Understanding propagation error • 57, 83
Update • 105
Update toolbar • 105
Using a design table with a simulation • 47, 81
V
Viewers toolbar • 118
Visualization as geometry • 41, 48, 71
W
Warning
Functionality not supported • 166
Invalid input parameters. No optical properties... • 167
Invalid input parameters. Sensors • 167
Some material properties... • 164
Sorry, the license required for this simulation (VE3 or VE4)... • 165
Warning and Error messages • 162
X
XMP result • 130