From f432d3878a8f250846d4812ac550d01ec22702b3 Mon Sep 17 00:00:00 2001 From: jerryzeng Date: Sun, 1 Nov 2026 16:53:51 +0800 Subject: [PATCH] =?UTF-8?q?compute3D=20v0.2=20=E8=B0=83=E6=95=B4=E4=BA=86?= =?UTF-8?q?=E8=BE=93=E5=87=BA=E6=97=B6=E5=BA=8F=EF=BC=8C=20=E4=B8=8E?= =?UTF-8?q?=E5=8D=95=E7=9B=AE=E7=9B=B8=E6=9C=BA=E6=97=B6=E5=BA=8F=E4=B8=80?= =?UTF-8?q?=E6=A0=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 7_compute3D/sourceCode/compute3D.cpp | 35 +++++++++++++++++++++++++ 7_compute3D/sourceCode/compute3D_tb.cpp | 26 +++++++++++++++++- 2 files changed, 60 insertions(+), 1 deletion(-) diff --git a/7_compute3D/sourceCode/compute3D.cpp b/7_compute3D/sourceCode/compute3D.cpp index 6a75a56..258af41 100644 --- a/7_compute3D/sourceCode/compute3D.cpp +++ b/7_compute3D/sourceCode/compute3D.cpp @@ -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) { diff --git a/7_compute3D/sourceCode/compute3D_tb.cpp b/7_compute3D/sourceCode/compute3D_tb.cpp index 3d930c7..a2654c7 100644 --- a/7_compute3D/sourceCode/compute3D_tb.cpp +++ b/7_compute3D/sourceCode/compute3D_tb.cpp @@ -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 ++) {