Difference between revisions of "Frequently asked questions and Frequently experienced difficulties"

From 3D scanning Knowledge base - Photoneo wiki
Jump to: navigation, search
(Using script to set the IP address for a Photoneo PhoXi 3D Scanner with firmware v1.1.x)
(How do I upgrade the firmware on my scanner?)
 
(34 intermediate revisions by one other user not shown)
Line 45: Line 45:
 
So in this case we would use value 3 in next change IP request.
 
So in this case we would use value 3 in next change IP request.
  
=== Scanning reflective materials ===
+
=== How do I scan reflective materials? ===
 
PhoXi 3D scanner uses diffuse reflection of the projected 3D pattern to reconstruct the surface of objects.  
 
PhoXi 3D scanner uses diffuse reflection of the projected 3D pattern to reconstruct the surface of objects.  
  
Line 70: Line 70:
  
 
[[File:draft_2.png]]
 
[[File:draft_2.png]]
 
=== Corrupted Image Error===
 
If during your scanning you are not able to get scans because "Image was corrupted" error, in most cases, this is caused when the coordinate space is set to markerspace and recognize markers is turned on, even though there is no marker pattern in the scene.
 
 
[[File:imagecorr.png]]
 
 
Be sure that you have set these settings.
 
 
[[File:cameraspace.png]]
 
 
Also, the second most common cause, is due to slow ethernet connection. The scanner requires a 1Gbit/s connection.
 
 
You can test your connection speed in PhoXi Control v1.2.X.
 
 
[[File:testspeed.png]]
 
 
With 1Gbit connection your speed should be around 100MB/s.
 
  
 
=== How do I change settings of the scanner using API?===
 
=== How do I change settings of the scanner using API?===
 
From PhoXi API v1.2.X and with Firmware v1.2.X it is possible to change scanning parameters using the API. The modified FullAPIExample that shows how this is done can be found [https://photoneo.com/files/utils/Change_settings_API.zip here.]
 
From PhoXi API v1.2.X and with Firmware v1.2.X it is possible to change scanning parameters using the API. The modified FullAPIExample that shows how this is done can be found [https://photoneo.com/files/utils/Change_settings_API.zip here.]
 
=== The resulting point cloud contains artefacts ===
 
To remove noise artefacts from the scene, it is recommended using [http://photoneo.com/files/utils/PhoXiFilterNoise.zip this ]  (Ubuntu [http://photoneo.com/files/utils/PhoXiFilterNoise_ubuntu.zip this])  utility, which to turns on the guided filter. You can read about the guided filter [http://kaiminghe.com/publications/pami12guidedfilter.pdf here ].
 
For more advanced users, you can also modify the input values for the guided filter and also the bilateral filter. You can download the advanced utility [http://photoneo.com/files/utils/PhoXiFilterNoiseAdvanced.zip here] (Ubuntu [http://photoneo.com/files/utils/PhoXiFilterNoiseAdvanced_ubuntu.zip here]). You can read about the bilateral filter [https://en.wikipedia.org/wiki/Bilateral_filter here].
 
  
 
=== Is it possible to get a RGB pointcloud instead of a Grey-scale pointcloud? ===
 
=== Is it possible to get a RGB pointcloud instead of a Grey-scale pointcloud? ===
Line 110: Line 89:
 
Whether Photoneo will be able to calibrate an external color camera (option (1)) or produce a customized scanner (option (2)) for the customer will depend on his/hers specific application and on the potentiality of collaboration between Photoneo and the customer. This is handled by the Sales department of Photoneo and can be contacted at  [mailto:sales@photoneo.com sales@photoneo.com].
 
Whether Photoneo will be able to calibrate an external color camera (option (1)) or produce a customized scanner (option (2)) for the customer will depend on his/hers specific application and on the potentiality of collaboration between Photoneo and the customer. This is handled by the Sales department of Photoneo and can be contacted at  [mailto:sales@photoneo.com sales@photoneo.com].
  
== Upgrading firmware on your scanner ==
+
=== How do I upgrade the firmware on my scanner? ===
This method only works with PhoXiControl release candidate v1.2.3 or higher and with scanner firmware v1.2.1 or higher. DO NOT USE THIS GUIDE, if your firmware version is lower than v1.2.1 (If you would like to upgrade firmware lower than v1.2.1 contact us at support@photoneo.com)
+
'''Please contact [mailto:support@photoneo.com support@photoneo.com] for information about firmware update.'''
  
;1) Contact us at support@photoneo.com and we will provide you with a .deb file, this is the installer for the firmware.
+
Although PhoXi Control 1.2.14 has a functionality for firmware update handled by the user, currently it is reserved only for testing and development purposes. All firmware updates should be handled by qualified personnel.
  
;2) Open PhoXiControl and connect to the scanner you want upgrade your firmware on.
+
=== How do I connect multiple scanners to one computer? ===
 
 
;3) Click on the tools pane at the middle of the toolbar (it is represented by a wrench icon)
 
[[File:pane_2.png]]
 
 
 
;4) The following window will open, find the .deb file on your computer, then click open.
 
[[File:fw_upg_3.png]]
 
 
 
;5) The cofirmation window will pop-up and your scanner will restart and upgrade.
 
[[File:restart.png]]
 
 
 
== Connecting multiple scanners to one computer ==
 
  
 
;Using PhoXi Control
 
;Using PhoXi Control
Line 143: Line 111:
 
2) Do not attempt to create 2 instances of pho::api::PhoXiFactory, instead create just 1 factory and call CreateAndConnect method twice to get 2 pointers to different scanners
 
2) Do not attempt to create 2 instances of pho::api::PhoXiFactory, instead create just 1 factory and call CreateAndConnect method twice to get 2 pointers to different scanners
  
== Make PhoXi Control automatically connect to a specific scanner ==
+
=== How do I make PhoXi Control connect automatically to a specific scanner? ===
 
You can download [http://photoneo.com/files/utils/connection_utility.zip this] utility, which will allow you to run PhoXi Control and automatically connect to one specific scanner.  
 
You can download [http://photoneo.com/files/utils/connection_utility.zip this] utility, which will allow you to run PhoXi Control and automatically connect to one specific scanner.  
 
Please follow the readme.txt. The utility uses the PhoXi API and the source is included in the .zip file.
 
Please follow the readme.txt. The utility uses the PhoXi API and the source is included in the .zip file.
  
== Guide to building SimpleLocateExample using Localization SDK ==
+
=== How do find the transformation matrix of the marker pattern coordinate system? ===
 +
 
 +
[http://photoneo.com/files/utils/Extract_transformation.zip Here], you can download a utility that will allow you to extract the desired transformation matrix.
 +
The utility also contains the source code. To run the utility input the scanner ID into the file \Release\Scanner_ID.txt and run \Release\Extract_transformation_Release.exe, the result will be saved to \Release\result.txt.
 +
 
 +
=== How does the Robot Camera Calibration Tool work? What are its capabilities? ===
 +
The manual for the Robot Camera Calibration Tool can be downloaded [http://photoneo.com/files/manuals/Robot_Camera_Calibration_User_Manual_EN_v2.pdf here.]
 +
It contains step-by-step instructions on how to use this program.
 +
 
 +
=== Can I scan outside of the scanning range of the PhoXi 3D Scanner? ===
 +
Yes, it is possible to do so. The utility that turns off Calibration volume cutting (Scan range cutting) can be downloaded [http://photoneo.com/files/utils/CalibrationVolume.zip here.] However, it is important to bear in mind that the guaranteed calibration accuracy cannot be upheld in the region outside of the scanning range.
 +
 
 +
== FED ==
 +
 
 +
=== Corrupted Image Error===
 +
If during your scanning you are not able to get scans because "Image was corrupted" error, in most cases, this is caused when the coordinate space is set to markerspace and recognize markers is turned on, even though there is no marker pattern in the scene.
 +
 
 +
[[File:imagecorr.png]]
 +
 
 +
Be sure that you have set these settings.
 +
 
 +
[[File:cameraspace.png]]
 +
 
 +
Also, the second most common cause, is due to slow ethernet connection. The scanner requires a 1Gbit/s connection.
 +
 
 +
You can test your connection speed in PhoXi Control v1.2.X.
 +
 
 +
[[File:testspeed.png]]
 +
 
 +
With 1Gbit connection your speed should be around 100MB/s.
 +
 
 +
=== The resulting point cloud contains artefacts ===
 +
To remove noise artefacts from the scene, it is recommended using [http://photoneo.com/files/utils/PhoXiFilterNoise.zip this ]  (Ubuntu [http://photoneo.com/files/utils/PhoXiFilterNoise_ubuntu.zip this])  utility, which to turns on the guided filter. You can read about the guided filter [http://kaiminghe.com/publications/pami12guidedfilter.pdf here ].
 +
For more advanced users, you can also modify the input values for the guided filter and also the bilateral filter. You can download the advanced utility [http://photoneo.com/files/utils/PhoXiFilterNoiseAdvanced.zip here] (Ubuntu [http://photoneo.com/files/utils/PhoXiFilterNoiseAdvanced_ubuntu.zip here]). You can read about the bilateral filter [https://en.wikipedia.org/wiki/Bilateral_filter here].
 +
 
 +
=== I cannot build the SimpleLocateExample of Localization SDK ===
  
 
'''1) Find the SimpleLocateExample folder (by default in C:\Program Files\PhotoneoSDK\Localization\Examples\)'''
 
'''1) Find the SimpleLocateExample folder (by default in C:\Program Files\PhotoneoSDK\Localization\Examples\)'''
Line 183: Line 186:
 
[[File:run_code.png|1100px]]
 
[[File:run_code.png|1100px]]
  
== The Depthmap has not transformed with a modification of the coordinate system of the scan ==
+
=== The Depthmap has not transformed with a modification of the coordinate system of the scan ===
  
 
The Depthmap, by definition, is an image containing Z-values of the default coordinate system (camera coordinate system).
 
The Depthmap, by definition, is an image containing Z-values of the default coordinate system (camera coordinate system).
Line 189: Line 192:
 
The get the "transformed" depthmap (i.e. Z-values of the custom coordinate system), Photoneo recommends the following:
 
The get the "transformed" depthmap (i.e. Z-values of the custom coordinate system), Photoneo recommends the following:
  
'''1) To be Continued '''
+
'''1) Click the saving options button on top of the PhoXi Control pane, then tick off the option "Raw Images data format in tif", next tick off "PointCloud" and finally click the button set. (or set and store if you want permanently set these saving options). '''
  
 
[[File:Z-map_guide_1.png|1100px]]
 
[[File:Z-map_guide_1.png|1100px]]
 +
 +
'''2) Trigger the desired scan, then click the save button on top of the PhoXi Control pane, set save as type to "Raw Images data format in tif (*.tif)", input the File name and finally click the save button. '''
 +
 +
[[File:Savetif.png|1100px]]
 +
 +
'''3) Go to the folder where you have save the .tif images and find the image that ends with PointCloud_Z.tif, this will be your desired "transformed" depthmap.  '''
 +
 +
[[File:Z-map_final.png|1100px]]
 +
 +
=== A utility program provided by Photoneo changes the settings as expected, but does not save them permanently to the scanner ===
 +
 +
This is a very common difficulty experienced by our customers, if you are using PhoXi Control v1.2.X. with PhoXi 3D scanner firmware v1.2.X.
 +
do the following:
 +
 +
'''Select the profile <NON-SELECTED>, then run the desired utility, then press any key (for example 1) and then press enter. Finally click the "Set and Store" button. '''
 +
 +
[[File:Utility_guide.png|1100px]]
 +
 +
Now the changed setting will be saved and applied to '''ALL''' profiles.
 +
 +
=== I received a Motion-3D camera and I am not able to get it working ===
 +
 +
The Motion3D-cam requires it own version of PhoXi Control,
 +
you can download the windows version here [http://photoneo.com/files/installer/PhoXi/1.3.0-cam-alpha/PhotoneoPhoXiControlInstaller-1.3.0-win64-3dCam-@.exe here]
 +
and the ubuntu version [http://photoneo.com/files/installer/PhoXi/1.3.0-cam-alpha/PhotoneoPhoXiControlInstaller-1.3.0-Ubuntu16-gcc55-3dCam-@2610ddf.run here].
 +
 +
Photoneo also recommends having an up-to-date driver on your graphics card and an original driver provided by the card manufacturer.
 +
Please also note, that the Motion-3D camera is shipped with a protective lens cover. Please keep the cover as it can be useful in the future.
 +
It is also important to bear in mind, that at the current state of affairs Photoneo provides only engineering samples of the Motion-3D camera. Therefore, the processes are not yet finished and there is no manual for it.
 +
 +
For further information and assistance please contact Photoneo at  [mailto:support@photoneo.com support@photoneo.com].
 +
 +
===I get the following errors when running a localization SDK code. ===
 +
 +
[[File:errorwindow.png|1100px]]
 +
 +
The error is caused by the method "isAcquiring" and the development team is working on fixing this bug.
 +
However, this warning message does produce any incorrect results. For now, Photoneo recommends to not worry about it.
 +
 +
=== I cannot use debug feature when running a localization SDK code. ===
 +
 +
Unfortunately, the debug mode is not included in the installation. The main reason for this is because running the code in debug mode with the debug libraries is incredibly slow on windows. Moreover, the debug libraries are very large and would make Localization SDK software much larger.
 +
 +
Running Debug with the release libraries is not possible on windows, because they are not binary compatible. It is possible to do this on Linux however.
 +
To overcome the slowness of the Debug libraries on windows, Photoneo recommends running the code in the configuration RelWithDebInfo. This will allow access to the debug features of visual studio in software development. You can download the modified SDK Examples that include this option [http://photoneo.com/files/codes/SDK_Examples_RelWithDebInfo.zip here].

Latest revision as of 15:37, 16 December 2019

Software download: Downloads and information

FAQ

How do I save the point cloud?

To save the current point cloud, use the button "SavePointCloud" in the top panel. The file will be stored in selected file format. To choose what data will be stored in the file, click "Recording options" button and then button "Options" next to the desired file format.

Most general file format is PLY. Useful data to save are PointCloud, NormalMap, Texture and use BinaryFormat.

When you want to save all information about the scan, use Photoneo's Raw data format.

To automatically store every captured frame, use the "Record" button. Point clouds will be saved in the directory and file formats set in "Recording Options".

How do I retrieve the intrinsic parameters of the scanner?

Download the following zip file for Windows here.

Download the following zip file for Ubuntu here.

Extract the zip file and follow the README.txt file.

All of the coefficients are compatible with the OpenCV standard, you can read about the OpenCV standard here

How do I set a static IP address for a Photoneo PhoXi 3D Scanner with firmware v1.1.x on Ubuntu 16.04 systems?

If you need to set the IP address for a scanner with firmware v1.1.x and all you have is a Ubuntu PC (16.04) with avahi-tools installed you can do so using the phoxi_3d_scanner_set_ip.sh script. The script works also on the scanner itself. To set static IP address use it like this:

./phoxi_3d_scanner_set_ip.sh 2018-08-011-LC3 1 10.0.0.10 10.0.0.1 255.255.255.0 10.0.0.1

If you want to set dynamic address:

./phoxi_3d_scanner_set_ip.sh 2018-08-011-LC3 1 dhcp


The second parameter, CHANGE_REQUEST_ID, is a sequential integer number that needs to be incremented with each subsequent change. To find out what is the current value use the avahi-browse tool, for example:

$ avahi-browse -r -t _3d-camera._tcp 

The terminal will show the following output:

+ enp0s31f6 IPv4 PhoXi3DScan-2018-08-011-LC3                   _3d-camera._tcp      local 
= enp0s31f6 IPv4 PhoXi3DScan-2018-08-011-LC3 _3d-camera._tcp local
hostname = [ytrium1.local]
address = [10.0.0.10]
port = [65499]
txt = ["Occupied_By: ::ffff:10.0.0.1" "changeId: 2" "version: 1.1.62" "status: Occupied" "description: Photoneo 3D Scanner" "id: 2018-08-011-LC3"]

So in this case we would use value 3 in next change IP request.

How do I scan reflective materials?

PhoXi 3D scanner uses diffuse reflection of the projected 3D pattern to reconstruct the surface of objects.

The following scheme depicts the difference between a beam reflected diffusely and specularly.

Diffuse.png

(source: Wikipedia )

In general, there are two main reasons for lower quality 3D reconstruction of reflective surfaces:

1) Reflective materials prevent diffuse reflection, this causes the projected laser pattern to have lower contrast between the dark and light stripes.

2) Interference, the specularly reflected laser pattern interferes with the diffusely reflected laser pattern and leads to incorrect pattern perception.

The following can be done to increase the quality:

1) Try changing the scanning angle, if the scanner is scanning the object from the side move it so that it is directly above the scanned object. This will cause more beams that are totally reflected to not be reflected back to the camera unit and therefore, not interfere with the diffusely reflected laser pattern. In general, the best method to get the best scan through trial and error and finding the optimal scanning position.

2) If sides the bin in which the object is inside of is reflective, then this utility can be used. (Please follow the README.txt, incorrect use of this utility can cause your scanner to be improperly calibrated) It will narrow the range of the projected laser pattern and therefore the red beam shown in the picture below will not be projected.

Draft 2.png

How do I change settings of the scanner using API?

From PhoXi API v1.2.X and with Firmware v1.2.X it is possible to change scanning parameters using the API. The modified FullAPIExample that shows how this is done can be found here.

Is it possible to get a RGB pointcloud instead of a Grey-scale pointcloud?

There are two ways of creating a colored pointcloud using a PhoXi 3D scanner.

1) Using an external color camera

There is a possibility of using an external color camera, we would recommend placing this camera right below or above the scanner. However, the image made by this camera has to be integrated into the final pointcloud. This can be done via a mathematical computation using the intrinsic parameters of this colored camera.

2) Production of a customized scanner

The customized scanner would contain two cameras in its camera unit and the second one would take a colored image of the scene integrated into the final pointcloud

If a customer is interested in any of these options, both of them will have to be discussed internally at Photoneo. Whether Photoneo will be able to calibrate an external color camera (option (1)) or produce a customized scanner (option (2)) for the customer will depend on his/hers specific application and on the potentiality of collaboration between Photoneo and the customer. This is handled by the Sales department of Photoneo and can be contacted at sales@photoneo.com.

How do I upgrade the firmware on my scanner?

Please contact support@photoneo.com for information about firmware update.

Although PhoXi Control 1.2.14 has a functionality for firmware update handled by the user, currently it is reserved only for testing and development purposes. All firmware updates should be handled by qualified personnel.

How do I connect multiple scanners to one computer?

Using PhoXi Control

In PhoXi Control it is possible to connect to two scanners at the same time and trigger the scans one after another.

Connect to the first scanner, then click menu -> network discovery and then click the second scanner you want to connect to. You will then have two tabs as you can see in the picture below and then you can change between the two tabs by clicking on them. Pane wiki.png

Using the PhoXi API

Connecting mutliple scanners can also be done using the PhoXi API, you can download the example code for this here.

Important points to note are: 1) Define SCANNER_HWID_1 and SCANNER_HWID_2 to the correct Hardware identification strings of your scanners

2) Do not attempt to create 2 instances of pho::api::PhoXiFactory, instead create just 1 factory and call CreateAndConnect method twice to get 2 pointers to different scanners

How do I make PhoXi Control connect automatically to a specific scanner?

You can download this utility, which will allow you to run PhoXi Control and automatically connect to one specific scanner. Please follow the readme.txt. The utility uses the PhoXi API and the source is included in the .zip file.

How do find the transformation matrix of the marker pattern coordinate system?

Here, you can download a utility that will allow you to extract the desired transformation matrix. The utility also contains the source code. To run the utility input the scanner ID into the file \Release\Scanner_ID.txt and run \Release\Extract_transformation_Release.exe, the result will be saved to \Release\result.txt.

How does the Robot Camera Calibration Tool work? What are its capabilities?

The manual for the Robot Camera Calibration Tool can be downloaded here. It contains step-by-step instructions on how to use this program.

Can I scan outside of the scanning range of the PhoXi 3D Scanner?

Yes, it is possible to do so. The utility that turns off Calibration volume cutting (Scan range cutting) can be downloaded here. However, it is important to bear in mind that the guaranteed calibration accuracy cannot be upheld in the region outside of the scanning range.

FED

Corrupted Image Error

If during your scanning you are not able to get scans because "Image was corrupted" error, in most cases, this is caused when the coordinate space is set to markerspace and recognize markers is turned on, even though there is no marker pattern in the scene.

Imagecorr.png

Be sure that you have set these settings.

Cameraspace.png

Also, the second most common cause, is due to slow ethernet connection. The scanner requires a 1Gbit/s connection.

You can test your connection speed in PhoXi Control v1.2.X.

Testspeed.png

With 1Gbit connection your speed should be around 100MB/s.

The resulting point cloud contains artefacts

To remove noise artefacts from the scene, it is recommended using this (Ubuntu this) utility, which to turns on the guided filter. You can read about the guided filter here . For more advanced users, you can also modify the input values for the guided filter and also the bilateral filter. You can download the advanced utility here (Ubuntu here). You can read about the bilateral filter here.

I cannot build the SimpleLocateExample of Localization SDK

1) Find the SimpleLocateExample folder (by default in C:\Program Files\PhotoneoSDK\Localization\Examples\)

Find SLE.png

2) Copy this folder to a separate directory

Seperate folder.png

3) Open Cmake (you can download it here), input the source code path and where the binaries should be built (Photoneo recommends creating a /dev folder in the same path as the source code path)

InputCmake.png


4) Do the instructions based on the image, make you use Visual Studio 12 2013 Win64 generator, DO NOT USE A DIFFERENT GENERATOR, your program will NOT work. You will able to run the solution with VS 2013, VS 2015, VS 2017. footnote: If you get an error "Failed to run MSBuild command: MSBuild.exe." Then Photoneo recommends installing Visual Studio Express 2013 for Windows Desktop, the newer licences are applicable for this software.

Compiler.png

5) Click the Generate button, this is how the window should look

Finalization.png

6) Go to /dev folder and find the .sln file, this file can be opened with VS 2013, VS 2015, VS 2017.

Solution file.png

7) When you open the file in VS right-click SimpleLocateExample (Visual Studio 2013) on the Solution Explorer Pane and Set it as a startup project.

Set startup.png

8) Finally, run the code

Run code.png

The Depthmap has not transformed with a modification of the coordinate system of the scan

The Depthmap, by definition, is an image containing Z-values of the default coordinate system (camera coordinate system).

The get the "transformed" depthmap (i.e. Z-values of the custom coordinate system), Photoneo recommends the following:

1) Click the saving options button on top of the PhoXi Control pane, then tick off the option "Raw Images data format in tif", next tick off "PointCloud" and finally click the button set. (or set and store if you want permanently set these saving options).

Z-map guide 1.png

2) Trigger the desired scan, then click the save button on top of the PhoXi Control pane, set save as type to "Raw Images data format in tif (*.tif)", input the File name and finally click the save button.

Savetif.png

3) Go to the folder where you have save the .tif images and find the image that ends with PointCloud_Z.tif, this will be your desired "transformed" depthmap.

Z-map final.png

A utility program provided by Photoneo changes the settings as expected, but does not save them permanently to the scanner

This is a very common difficulty experienced by our customers, if you are using PhoXi Control v1.2.X. with PhoXi 3D scanner firmware v1.2.X. do the following:

Select the profile <NON-SELECTED>, then run the desired utility, then press any key (for example 1) and then press enter. Finally click the "Set and Store" button.

Utility guide.png

Now the changed setting will be saved and applied to ALL profiles.

I received a Motion-3D camera and I am not able to get it working

The Motion3D-cam requires it own version of PhoXi Control, you can download the windows version here here and the ubuntu version here.

Photoneo also recommends having an up-to-date driver on your graphics card and an original driver provided by the card manufacturer. Please also note, that the Motion-3D camera is shipped with a protective lens cover. Please keep the cover as it can be useful in the future. It is also important to bear in mind, that at the current state of affairs Photoneo provides only engineering samples of the Motion-3D camera. Therefore, the processes are not yet finished and there is no manual for it.

For further information and assistance please contact Photoneo at support@photoneo.com.

I get the following errors when running a localization SDK code.

Errorwindow.png

The error is caused by the method "isAcquiring" and the development team is working on fixing this bug. However, this warning message does produce any incorrect results. For now, Photoneo recommends to not worry about it.

I cannot use debug feature when running a localization SDK code.

Unfortunately, the debug mode is not included in the installation. The main reason for this is because running the code in debug mode with the debug libraries is incredibly slow on windows. Moreover, the debug libraries are very large and would make Localization SDK software much larger.

Running Debug with the release libraries is not possible on windows, because they are not binary compatible. It is possible to do this on Linux however. To overcome the slowness of the Debug libraries on windows, Photoneo recommends running the code in the configuration RelWithDebInfo. This will allow access to the debug features of visual studio in software development. You can download the modified SDK Examples that include this option here.