diff --git a/App/ScrewPosition/ScrewPositionApp/Presenter/Src/DetectPresenter.cpp b/App/ScrewPosition/ScrewPositionApp/Presenter/Src/DetectPresenter.cpp index efb6f2eb..e9bb4bfc 100644 --- a/App/ScrewPosition/ScrewPositionApp/Presenter/Src/DetectPresenter.cpp +++ b/App/ScrewPosition/ScrewPositionApp/Presenter/Src/DetectPresenter.cpp @@ -184,9 +184,9 @@ int DetectPresenter::DetectScrew( LOG_DEBUG("before sx_hexHeadScrewMeasure \n"); std::vector screwInfo; - sx_hexHeadScrewMeasure( + sx_hexHeadScrewMeasure_PCA( xyzData, - isHorizonScan, + // isHorizonScan, cornerParam, filterParam, growParam, diff --git a/App/ScrewPosition/ScrewPositionApp/Version.h b/App/ScrewPosition/ScrewPositionApp/Version.h index 80d56aa2..0d4c86a5 100644 --- a/App/ScrewPosition/ScrewPositionApp/Version.h +++ b/App/ScrewPosition/ScrewPositionApp/Version.h @@ -3,7 +3,7 @@ #define SCREWPOSITION_APP_NAME "螺杆定位" -#define SCREWPOSITION_VERSION_STRING "1.2.3" +#define SCREWPOSITION_VERSION_STRING "1.2.4" #define SCREWPOSITION_BUILD_STRING "1" #define SCREWPOSITION_FULL_VERSION_STRING "V" SCREWPOSITION_VERSION_STRING "_" SCREWPOSITION_BUILD_STRING diff --git a/App/ScrewPosition/ScrewPositionApp/Version.md b/App/ScrewPosition/ScrewPositionApp/Version.md index 2ec9c92b..8ed60d67 100644 --- a/App/ScrewPosition/ScrewPositionApp/Version.md +++ b/App/ScrewPosition/ScrewPositionApp/Version.md @@ -1,3 +1,6 @@ +# 1.2.4 2026-06-10 +1. 更新算法:螺杆的接口更新 + # 1.2.3 2026-06-06 1. 更新算法:ARM上检测结果为空 diff --git a/AppAlgo/rodAndBarDetection/Arm/aarch64/libbaseAlgorithm.so b/AppAlgo/rodAndBarDetection/Arm/aarch64/libbaseAlgorithm.so index 17e83b41..e0c6603a 100644 Binary files a/AppAlgo/rodAndBarDetection/Arm/aarch64/libbaseAlgorithm.so and b/AppAlgo/rodAndBarDetection/Arm/aarch64/libbaseAlgorithm.so differ diff --git a/AppAlgo/rodAndBarDetection/Arm/aarch64/librodAndBarDetection.so b/AppAlgo/rodAndBarDetection/Arm/aarch64/librodAndBarDetection.so index 837ec9e4..8b5d557d 100644 Binary files a/AppAlgo/rodAndBarDetection/Arm/aarch64/librodAndBarDetection.so and b/AppAlgo/rodAndBarDetection/Arm/aarch64/librodAndBarDetection.so differ diff --git a/AppAlgo/rodAndBarDetection/Inc/rodAndBarDetection_Export.h b/AppAlgo/rodAndBarDetection/Inc/rodAndBarDetection_Export.h index 56251a02..75d24a14 100644 --- a/AppAlgo/rodAndBarDetection/Inc/rodAndBarDetection_Export.h +++ b/AppAlgo/rodAndBarDetection/Inc/rodAndBarDetection_Export.h @@ -84,6 +84,18 @@ SG_APISHARED_EXPORT void sx_hexHeadScrewMeasure( std::vector& screwInfo, int* errCode); +//PCAݸ˶˲ĵλ +//sx_hexHeadScrewMeasure()㷨ϣ1ȥˮƽΣ2ʹPCA +SG_APISHARED_EXPORT void sx_hexHeadScrewMeasure_PCA( + std::vector< std::vector>& scanLines, + //bool isHorizonScan, //true:ƽв۵false:ߴֱ۵ + const SSG_cornerParam cornerPara, + const SSG_outlierFilterParam filterParam, + const SSG_treeGrowParam growParam, + double rodDiameter, + std::vector& screwInfo, + int* errCode); + //㶨λĵλ SG_APISHARED_EXPORT SSX_platePoseInfo sx_getLocationPlatePose( std::vector< std::vector>& scanLines, diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.dll b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.dll index f0041023..d1b05748 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.dll and b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.dll differ diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.lib b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.lib index f95a84bd..c637a705 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.lib and b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.lib differ diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.pdb b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.pdb index c12118a0..8a249cb5 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.pdb and b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/baseAlgorithm.pdb differ diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.dll b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.dll index 60befe2f..5a31a65f 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.dll and b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.dll differ diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.lib b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.lib index 08e51f7c..b2740b87 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.lib and b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.lib differ diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.pdb b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.pdb index c15b65fd..848615cd 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.pdb and b/AppAlgo/rodAndBarDetection/Windows/x64/Debug/rodAndBarDetection.pdb differ diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.dll b/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.dll index 316f05b7..b46c725b 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.dll and b/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.dll differ diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.lib b/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.lib index a2de0534..47e066db 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.lib and b/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.lib differ diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.pdb b/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.pdb index 3d2e8cc0..420bf5f1 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.pdb and b/AppAlgo/rodAndBarDetection/Windows/x64/Release/baseAlgorithm.pdb differ diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.dll b/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.dll index 365f6cbe..09474abd 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.dll and b/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.dll differ diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.lib b/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.lib index e280cce8..55623449 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.lib and b/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.lib differ diff --git a/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.pdb b/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.pdb index 1d7fdbcc..739d6671 100644 Binary files a/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.pdb and b/AppAlgo/rodAndBarDetection/Windows/x64/Release/rodAndBarDetection.pdb differ diff --git a/AppAlgo/rodAndBarDetection/rodAndBarDetection_test.cpp b/AppAlgo/rodAndBarDetection/rodAndBarDetection_test.cpp index 1ed1e013..19782156 100644 --- a/AppAlgo/rodAndBarDetection/rodAndBarDetection_test.cpp +++ b/AppAlgo/rodAndBarDetection/rodAndBarDetection_test.cpp @@ -471,9 +471,10 @@ void _outputRGBDScan_RGBD( sw << "{" << rgb.r << "," << rgb.g << "," << rgb.b << "," << size << " }" << std::endl; //输出法向 + rgb = { 250, 255, 0 }; size = 1; double len1 = 30; - double len2 = 200; + double len2 = 300; lineIdx = 0; for (int i = 0; i < objNum; i++) { @@ -998,11 +999,11 @@ void screwTest(void) const char* ver = wd_rodAndBarDetectionVersion(); printf("ver:%s\n", ver); - for (int grp = 9; grp < SCREW_TEST_GROUP; grp++) + for (int grp = 3; grp <= 6; grp++) { for (int fidx = fileIdx[grp].nMin; fidx <= fileIdx[grp].nMax; fidx++) { - //fidx =3; + //fidx =2; char _scan_file[256]; if(0 == grp) @@ -1052,9 +1053,9 @@ void screwTest(void) bool isHorizonScan = true; //true:激光线平行槽道;false:激光线垂直槽道 int errCode = 0; std::vector screwInfo; - sx_hexHeadScrewMeasure( + sx_hexHeadScrewMeasure_PCA( scanLines, - isHorizonScan, //true:激光线平行槽道;false:激光线垂直槽道 + //isHorizonScan, //true:激光线平行槽道;false:激光线垂直槽道 cornerParam, filterParam, growParam, @@ -1743,9 +1744,9 @@ typedef enum int main() { - //ESG_testMode testMode = keSG_测试_配天螺杆定位; + ESG_testMode testMode = keSG_测试_配天螺杆定位; //ESG_testMode testMode = keSG_测试_配天定位盘定位; - ESG_testMode testMode = keSG_测试_配天新定位盘定位; + //ESG_testMode testMode = keSG_测试_配天新定位盘定位; //ESG_testMode testMode = keSG_测试_棒材抓取; //ESG_testMode testMode = keSG_测试_筑裕钢筋焊缝定位;