basler / pypylon

The official python wrapper for the pylon Camera Software Suite
http://www.baslerweb.com
BSD 3-Clause "New" or "Revised" License
566 stars 207 forks source link

[Question] Basler tof640 with pylon on arm64 #218

Open AlfTetzlaff opened 4 years ago

AlfTetzlaff commented 4 years ago

Hi guys, sorry it's a bit chaotic, but I hope you get my questions:

1) I'm trying to setup the time of flight camera tof640 in conjunction with a raspberry pi, running on arm64. The installation of pylon worked. Now I'm trying to set the PixelFormat to "Coord3D_C16" or "Coord3D_ABC32f" but it throws an error, saying:

  File "<input>", line 1, in <module>
  File "/.../lib/python3.7/site-packages/pypylon/pylon.py", line 4411, in __setattr__
    self.GetNodeMap().GetNode(attribute).SetValue(val)
  File "/.../lib/python3.7/site-packages/pypylon/genicam.py", line 2629, in SetValue
    return _genicam.IEnumeration_SetValue(self, entry)
_genicam.InvalidArgumentException: Feature 'PixelFormat' : cannot convert value 'Coord3D_ABC32f', the value is invalid. : InvalidArgumentException thrown in node 'PixelFormat' while calling 'PixelFormat.FromString()' (file 'Enumeration.cpp', line 134)

...aaand that really makes no sense, because the camera actually supports these settings. Using harvesters on a amd64 pc and the .cti file from BaslerToF I can at least get the raw data which I can then reshape to the point cloud. The problem there is, that the genicam version harvesters relies on has not yet been compiled for arm64 - but somehow Basler has a working arm64 genicam implementation. Soo: a) Is there a way I can at least set the PixelFormat and acquisition modes for the tof camera using pypylon? dir(camera) already listed some things prefixed with TOF. or b) can you compile BaslerToF for arm64 and wrap it similar to pypylon? or c) can you implement proper ToF support in pylon/pypylon?

  1. Is there a way I can query all the stuff I can control, like exposure etc? dir(camera) gives some hints, it lists e.g. ExposureMode. Can I query which ExposureModes there are or do I have to look that up in the SDK somewhere?
Ikissubetter commented 4 years ago

The tof640 won´t officially be supported with an ARM64 driver. There is one, but it´s beta only. Also you can´t use it with Pylon. Therefore Basler has a dedicated ToF-SDK with a ToF-Viewer for easy first installation, which runs on Windows and Linux x86.

See the release notes: https://www.baslerweb.com/fp-1528894793/media/downloads/software/tof_software/release_notes_1.4.1.txt


KNOWN LIMITATIONS

Linux:

https://www.baslerweb.com/en/products/cameras/3d-cameras/

Good luck with it.