From 34db2009dac22c4b280bfbf1a2e7168f9aa4019c Mon Sep 17 00:00:00 2001 From: jerryzeng Date: Tue, 18 Nov 2025 00:07:05 +0800 Subject: [PATCH] =?UTF-8?q?version=201.5=20=20=20=EF=BC=881=EF=BC=89=20cal?= =?UTF-8?q?ib=E6=A8=A1=E5=9D=97=E7=B3=BB=E6=95=B0=E7=94=B1Kx0Kx1,Ky0Ky1?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E4=B8=BAKx0Ky0,=20Kx1Ky1=20=20=20=EF=BC=882?= =?UTF-8?q?=EF=BC=89=20compute3D=E6=A8=A1=E5=9D=97double=E5=9E=8B=E8=BE=93?= =?UTF-8?q?=E5=85=A5=E5=8F=82=E6=95=B0=E4=BF=AE=E6=94=B9=E4=B8=BAfloat?= =?UTF-8?q?=E5=9E=8B=E3=80=82=E5=86=85=E9=83=A8=E4=BB=8D=E7=84=B6=E6=8C=89?= =?UTF-8?q?double=E5=9E=8B=E8=AE=A1=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Calib/sourceCode/Calib.cpp | 24 ++++++++++++------------ Calib/sourceCode/calib_tb.cpp | 13 ++++++++----- compute3D/sourceCode/compute3D.cpp | 18 ++++++++++++------ compute3D/sourceCode/compute3D.h | 12 ++++++------ compute3D/sourceCode/compute3D_tb.cpp | 12 ++++++------ 5 files changed, 44 insertions(+), 35 deletions(-) diff --git a/Calib/sourceCode/Calib.cpp b/Calib/sourceCode/Calib.cpp index 59d7376..561148d 100644 --- a/Calib/sourceCode/Calib.cpp +++ b/Calib/sourceCode/Calib.cpp @@ -177,9 +177,9 @@ void calib( //ky = InData.calibK[1]; dataConver_x.dData = InData.calibK[0]; kx_1 = (float)dataConver_x.fData[0]; - kx_2 = (float)dataConver_x.fData[1]; - dataConver_y.dData = InData.calibK[0]; - ky_1 = (float)dataConver_y.fData[0]; + ky_1 = (float)dataConver_x.fData[1]; + dataConver_y.dData = InData.calibK[1]; + kx_2 = (float)dataConver_y.fData[0]; ky_2 = (float)dataConver_y.fData[1]; xmul0 = kx_1; @@ -206,9 +206,9 @@ void calib( { dataConver_x.dData = InData.calibK[0]; kx_1 = (float)dataConver_x.fData[0]; - kx_2 = (float)dataConver_x.fData[1]; - dataConver_y.dData = InData.calibK[0]; - ky_1 = (float)dataConver_y.fData[0]; + ky_1 = (float)dataConver_x.fData[1]; + dataConver_y.dData = InData.calibK[1]; + kx_2 = (float)dataConver_y.fData[0]; ky_2 = (float)dataConver_y.fData[1]; float x2_tmp = (float)x2; @@ -244,9 +244,9 @@ void calib( { dataConver_x.dData = InData.calibK[0]; kx_1 = (float)dataConver_x.fData[0]; - kx_2 = (float)dataConver_x.fData[1]; - dataConver_y.dData = InData.calibK[0]; - ky_1 = (float)dataConver_y.fData[0]; + ky_1 = (float)dataConver_x.fData[1]; + dataConver_y.dData = InData.calibK[1]; + kx_2 = (float)dataConver_y.fData[0]; ky_2 = (float)dataConver_y.fData[1]; float x4_tmp = (float)x4; @@ -281,9 +281,9 @@ void calib( { dataConver_x.dData = InData.calibK[0]; kx_1 = (float)dataConver_x.fData[0]; - kx_2 = (float)dataConver_x.fData[1]; - dataConver_y.dData = InData.calibK[0]; - ky_1 = (float)dataConver_y.fData[0]; + ky_1 = (float)dataConver_x.fData[1]; + dataConver_y.dData = InData.calibK[1]; + kx_2 = (float)dataConver_y.fData[0]; ky_2 = (float)dataConver_y.fData[1]; float x6_tmp = (float)x6; diff --git a/Calib/sourceCode/calib_tb.cpp b/Calib/sourceCode/calib_tb.cpp index 981ad43..ed87981 100644 --- a/Calib/sourceCode/calib_tb.cpp +++ b/Calib/sourceCode/calib_tb.cpp @@ -154,11 +154,14 @@ void genCalibTestSream( conData.Sync = 0b00; if(m == 0) { - Byte8 dataConv; - dataConv.fData[0] = 0.0; - dataConv.fData[1] = 1.0; - conData.calibK[0] = dataConv.dData; - conData.calibK[1] = dataConv.dData; + Byte8 dataConv_0; + dataConv_0.fData[0] = 0.0; + dataConv_0.fData[1] = 0.0; + Byte8 dataConv_1; + dataConv_1.fData[0] = 1.0; + dataConv_1.fData[1] = 1.0; + conData.calibK[0] = dataConv_0.dData; + conData.calibK[1] = dataConv_1.dData; } else { diff --git a/compute3D/sourceCode/compute3D.cpp b/compute3D/sourceCode/compute3D.cpp index 2c982ba..26414b2 100644 --- a/compute3D/sourceCode/compute3D.cpp +++ b/compute3D/sourceCode/compute3D.cpp @@ -4,12 +4,12 @@ void compute3D( hls::stream &inSubCalib, hls::stream &outPt3D, - double u0, - double v0, - double F_inv, - double plane_a, - double plane_b, - double plane_c + float u0_f, + float v0_f, + float F_inv_f, + float plane_a_f, + float plane_b_f, + float plane_c_f ) { #pragma HLS DATA_PACK variable=inSubCalib @@ -61,6 +61,12 @@ void compute3D( outData.x = InData.x; outPt3D.write(outData); + double u0 = u0_f; + double v0 =v0_f; + double F_inv =F_inv_f; + double plane_a = plane_a_f; + double plane_b = plane_b_f; + double plane_c = plane_c_f; for(int n = 0; n < WinNum; n ++) { #pragma HLS LOOP_TRIPCOUNT min=3072 max=3072 diff --git a/compute3D/sourceCode/compute3D.h b/compute3D/sourceCode/compute3D.h index 53dad7f..b37702b 100644 --- a/compute3D/sourceCode/compute3D.h +++ b/compute3D/sourceCode/compute3D.h @@ -7,12 +7,12 @@ void compute3D( hls::stream &inSubCalib, hls::stream &outPt3D, - double u0, - double v0, - double F_inv, - double plane_a, - double plane_b, - double plane_c + float u0, + float v0, + float F_inv, + float plane_a, + float plane_b, + float plane_c ); #endif diff --git a/compute3D/sourceCode/compute3D_tb.cpp b/compute3D/sourceCode/compute3D_tb.cpp index edd0a19..2b49ce0 100644 --- a/compute3D/sourceCode/compute3D_tb.cpp +++ b/compute3D/sourceCode/compute3D_tb.cpp @@ -211,12 +211,12 @@ int main() uint16_t frameROI_y = 0; genCompute3DTestSream(testData, inStream, FrmNo, timeStamp, encInfo, frameROI_w, frameROI_h, frameROI_x, frameROI_y); - double u0 = 620.1; - double v0 = 1023.51; - double F_inv = 0.0009933051235; - double plane_a = -2.67733; - double plane_b = 0.0501805; - double plane_c = 631.944; + float u0 = 620.1; + float v0 = 1023.51; + float F_inv = 0.0009933051235; + float plane_a = -2.67733; + float plane_b = 0.0501805; + float plane_c = 631.944; hls::stream outStream; compute3D(inStream, outStream, u0, v0, F_inv, plane_a, plane_b, plane_c );