You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
First of all, thanks for this very complete SDK!
I am using a YDLidar G2 device. I cannot get a correct intensity value.
Here is what I found in the source code:
In CYdLidar class, there is a member m_IntensityBit that can be set using setlidaropt and defaults to 10.
Depending on the device type, there can be no intensity value, or intensity value on 8 or 10 bits.
However, in YDlidarDriver class, there is also a member m_intensityBit, but it does not seem to be linked to the same member in CYdLidar.
In YDlidarDriver::getIntensityFlag(), called from YDlidarDriver::startScan(), m_intensityBit can be set to 0 or 8, but never to 10.
So in YDlidarDriver::parseNodeFromeBuffer(), the 2 upper intensity bit coming from the distance register are never used.
With a YDLidar G2 which has 10-bit intensity value, if the intensity becomes greater than 255, it returns to 0 whereas it should continue to increase until 1024.
Is my understanding correct or did I missing something to get the correct intensity value?
The text was updated successfully, but these errors were encountered:
Hello,
First of all, thanks for this very complete SDK!
I am using a YDLidar G2 device. I cannot get a correct intensity value.
Here is what I found in the source code:
In
CYdLidar
class, there is a memberm_IntensityBit
that can be set usingsetlidaropt
and defaults to10
.Depending on the device type, there can be no intensity value, or intensity value on 8 or 10 bits.
However, in
YDlidarDriver
class, there is also a memberm_intensityBit
, but it does not seem to be linked to the same member inCYdLidar
.In
YDlidarDriver::getIntensityFlag()
, called fromYDlidarDriver::startScan()
,m_intensityBit
can be set to 0 or 8, but never to 10.So in
YDlidarDriver::parseNodeFromeBuffer()
, the 2 upper intensity bit coming from the distance register are never used.With a YDLidar G2 which has 10-bit intensity value, if the intensity becomes greater than 255, it returns to 0 whereas it should continue to increase until 1024.
Is my understanding correct or did I missing something to get the correct intensity value?
The text was updated successfully, but these errors were encountered: