compute3D v0.2 调整了输出时序, 与单目相机时序一样

This commit is contained in:
jerryzeng 2026-11-01 16:53:51 +08:00
parent bcefbebd6d
commit f432d3878a
2 changed files with 60 additions and 1 deletions

View File

@ -159,6 +159,7 @@ FILTER_POINTS:
Pnt3D outData = {0.0f, 0.0f, 0.0f, 0, 0, 0, 0};
UintFloat outTmp;
#if 0
outTmp.unData = frmNo;
outData.x = outTmp.fdata;
outTmp.unData = timeStamp;
@ -177,6 +178,40 @@ FILTER_POINTS:
else
outData.Sync = 0b00;
outPt3D.write(outData);
#else
//1st: frameNo
outData.Sync = 0b10;
outTmp.unData = frmNo;
outData.x = outTmp.fdata;
outPt3D.write(outData);
//2nd: timeStamp
outData.Sync = 0b00;
outTmp.unData = timeStamp;
outData.x = outTmp.fdata;
outPt3D.write(outData);
//3rd:encInfo
outData.Sync = 0b00;
outTmp.unData = encInfo;
outData.x = outTmp.fdata;
outPt3D.write(outData);
//4th: frmW, frmH
outData.Sync = 0b00;
outData.x = 0.0f;
outPt3D.write(outData);
//5th: frmX, WinNum
outData.Sync = 0b00;
outTmp.unData = (unsigned int)outSize;
outTmp.unData &= 0xffff;
outData.x = outTmp.fdata;
outPt3D.write(outData);
//6th: frmY
if(outSize == 0)
outData.Sync = 0b11;
else
outData.Sync = 0b00;
outData.x = 0.0f;
outPt3D.write(outData);
#endif
if(outSize > 0)
{

View File

@ -109,6 +109,7 @@ void convertCompute3DStreamToArray(
uint32_t* encInfo,
uint16_t* data_size)
{
#if 0
Pnt3D syncData = streamData.read();
UintFloat dataTmp;
dataTmp.fdata = syncData.x;
@ -122,7 +123,30 @@ void convertCompute3DStreamToArray(
dataTmp.fdata = syncData.x;
*data_size = dataTmp.unData;
uint16_t size = dataTmp.unData;
#else
//1st:FrmNo
Pnt3D syncData = streamData.read();
UintFloat tmp;
tmp.fdata = syncData.x;
*FrmNo = (uint32_t)tmp.unData;
//2nd:timeStamp
syncData = streamData.read();
tmp.fdata = syncData.x;
*timeStamp = (uint32_t)tmp.unData;
//3rd:encInfo
syncData = streamData.read();
tmp.fdata = syncData.x;
*encInfo = (uint32_t)tmp.unData;
//4th:frmW(12bit), frmH(12bit): null
syncData = streamData.read();
//5th: frmX, WinNum
syncData = streamData.read();
tmp.fdata = syncData.x;
*data_size = (uint16_t)(tmp.unData & 0xffff);
uint16_t size = (uint16_t)(tmp.unData & 0xffff);
//6th: frmY: null
syncData = streamData.read();
#endif
//output data
for(int i = 0; i < size; i ++)
{