From 79859eb7e750add6a7dcdc71424b7fa94910d111 Mon Sep 17 00:00:00 2001
From: chenzenghui <3045316072@qq.com>
Date: Wed, 14 May 2025 01:48:58 +0800
Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=BB=BAGF3=E6=89=B9=E9=87=8F?=
=?UTF-8?q?=E5=AE=9A=E6=A0=87=E6=AD=A3=E5=B0=84=E5=B7=A5=E7=A8=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../BaseTool/BaseConstVariable.h | 1 -
BaseCommonLibrary/BaseTool/GeoOperator.cpp | 11 ++
BaseCommonLibrary/BaseTool/GeoOperator.h | 3 +
.../GF3CalibrationAndOrthLib.cpp | 2 +
.../GF3CalibrationAndOrthLib.h | 31 +++++
.../GF3CalibrationAndOrthLib.vcxproj | 124 ++++++++++++++++++
.../GF3CalibrationAndOrthLib.vcxproj.filters | 43 ++++++
.../GF3CalibrationGecodingBaseFuntion.h | 9 ++
.../GF3CalibrationGeoCodingFunCUDA.cu | 50 +++++++
.../GF3CalibrationGeoCodingFunCUDA.cuh | 33 +++++
.../gf3calibrationandorthlib_global.h | 14 ++
GF3StripPatchProcess/GF3RDZProcess.cu | 0
.../GF3StripPatchProcess.vcxproj | 19 +--
.../GF3StripPatchProcess.vcxproj.filters | 11 +-
GF3StripPatchProcess/main.cpp | 16 +++
LAMPDataProcess.sln | 15 +++
.../KJ135WBJYAlgWidgetComponet.cpp | 2 -
.../SimulationSARTool.vcxproj | 2 +-
18 files changed, 372 insertions(+), 14 deletions(-)
create mode 100644 GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.cpp
create mode 100644 GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.h
create mode 100644 GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.vcxproj
create mode 100644 GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.vcxproj.filters
create mode 100644 GF3CalibrationAndOrthLib/GF3CalibrationGecodingBaseFuntion.h
create mode 100644 GF3CalibrationAndOrthLib/GF3CalibrationGeoCodingFunCUDA.cu
create mode 100644 GF3CalibrationAndOrthLib/GF3CalibrationGeoCodingFunCUDA.cuh
create mode 100644 GF3CalibrationAndOrthLib/gf3calibrationandorthlib_global.h
create mode 100644 GF3StripPatchProcess/GF3RDZProcess.cu
diff --git a/BaseCommonLibrary/BaseTool/BaseConstVariable.h b/BaseCommonLibrary/BaseTool/BaseConstVariable.h
index 67114db..a9d8a44 100644
--- a/BaseCommonLibrary/BaseTool/BaseConstVariable.h
+++ b/BaseCommonLibrary/BaseTool/BaseConstVariable.h
@@ -357,5 +357,4 @@ inline void releaseVoidArray(void* a)
};
-
#endif
\ No newline at end of file
diff --git a/BaseCommonLibrary/BaseTool/GeoOperator.cpp b/BaseCommonLibrary/BaseTool/GeoOperator.cpp
index ce49a3e..33f585b 100644
--- a/BaseCommonLibrary/BaseTool/GeoOperator.cpp
+++ b/BaseCommonLibrary/BaseTool/GeoOperator.cpp
@@ -225,6 +225,17 @@ double operator /(Point3 a, Point3 b)
return sqrt(pow(a.x, 2) + pow(a.y, 2)) / sqrt(pow(b.x, 2) + pow(b.y, 2));
}
+double BASECONSTVARIABLEAPI getPixelSpacingInDegree(double pixelSpacingInMeter)
+{
+ return pixelSpacingInMeter / WGS84_A * r2d;
+
+}
+
+double BASECONSTVARIABLEAPI getPixelSpacingInMeter(double pixelSpacingInDegree)
+{
+ return pixelSpacingInDegree * WGS84_A * r2d;
+}
+
Landpoint getSlopeVector(const Landpoint& p0, const Landpoint& p1, const Landpoint& p2, const Landpoint& p3, const Landpoint& p4,bool inLBH) {
Landpoint n0, n1, n2, n3, n4;
diff --git a/BaseCommonLibrary/BaseTool/GeoOperator.h b/BaseCommonLibrary/BaseTool/GeoOperator.h
index 66ce525..bd0125d 100644
--- a/BaseCommonLibrary/BaseTool/GeoOperator.h
+++ b/BaseCommonLibrary/BaseTool/GeoOperator.h
@@ -23,6 +23,9 @@ Landpoint BASECONSTVARIABLEAPI LLA2XYZ(const Landpoint& LLA);
void BASECONSTVARIABLEAPI LLA2XYZ(const Landpoint& LLA,Point3& XYZ);
Eigen::MatrixXd BASECONSTVARIABLEAPI LLA2XYZ(Eigen::MatrixXd landpoint);
+double BASECONSTVARIABLEAPI getPixelSpacingInDegree(double pixelSpacingInMeter);
+
+double BASECONSTVARIABLEAPI getPixelSpacingInMeter(double pixelSpacingInDegree);
///
/// 将地固参心坐标系转换为经纬度
///
diff --git a/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.cpp b/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.cpp
new file mode 100644
index 0000000..1905178
--- /dev/null
+++ b/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.cpp
@@ -0,0 +1,2 @@
+#include "GF3CalibrationAndOrthLib.h"
+
diff --git a/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.h b/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.h
new file mode 100644
index 0000000..a755500
--- /dev/null
+++ b/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.h
@@ -0,0 +1,31 @@
+#pragma once
+/**
+* GF3ӰļУ䴦ݿ
+* @file GF3CalibrationAndOrthLib.h
+* @brief GF3ӰУ䴦ݿ
+* @details
+* GF3ӰļУ䴦ҪHH->VVתӰļУ䴦ȡ
+* ʵֻGF3ӰļУ䴦㷨ʵϸοס
+* @author
+*/
+#ifndef __GF3CALIBRATIONANDORTHLIB__H__
+#define __GF3CALIBRATIONANDORTHLIB__H__
+#include "gf3calibrationandorthlib_global.h"
+#include
+
+
+
+
+extern "C" GF3CALIBRATIONANDORTHLIB_EXPORT int GF3_Sigma0_HH2VV(QString in_SigmaHHRasterPath,QString in_IncidencAngleRasterPath,QString out_SigmaVVRasterPath);
+
+
+
+
+
+
+#endif
+
+
+
+
+
diff --git a/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.vcxproj b/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.vcxproj
new file mode 100644
index 0000000..1dd7d0f
--- /dev/null
+++ b/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.vcxproj
@@ -0,0 +1,124 @@
+
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}
+ QtVS_v304
+ 10.0
+ 10.0
+ $(MSBuildProjectDirectory)\QtMsBuild
+
+
+
+ DynamicLibrary
+ v143
+ true
+ Unicode
+
+
+ DynamicLibrary
+ v143
+ false
+ true
+ Unicode
+
+
+
+
+
+
+ tools_qt5
+ core
+ debug
+
+
+ tools_qt5
+ core
+ release
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ .;..\GPUBaseLib\GPUTool;..\GPUBaseLib;..\BaseCommonLibrary\ToolAbstract;..\BaseCommonLibrary\BaseTool;..\BaseCommonLibrary;$(IncludePath)
+
+
+
+ true
+ GF3CALIBRATIONANDORTHLIB_LIB;%(PreprocessorDefinitions)
+ Level3
+ true
+ true
+
+
+ Windows
+ true
+
+
+
+
+ true
+ GF3CALIBRATIONANDORTHLIB_LIB;%(PreprocessorDefinitions)
+ Level3
+ true
+ true
+ true
+ true
+
+
+ Windows
+ false
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+ {872ecd6f-30e3-4a1b-b17c-15e87d373ff6}
+
+
+ {b8b40c54-f7fe-4809-b6fb-8bc014570d7b}
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.vcxproj.filters b/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.vcxproj.filters
new file mode 100644
index 0000000..73024af
--- /dev/null
+++ b/GF3CalibrationAndOrthLib/GF3CalibrationAndOrthLib.vcxproj.filters
@@ -0,0 +1,43 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ qml;cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;hm;inl;inc;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ qrc;rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+ {99349809-55BA-4b9d-BF79-8FDBB0286EB3}
+ ui
+
+
+ {639EADAA-A684-42e4-A9AD-28FC9BCB8F7C}
+ ts
+
+
+
+
+ Header Files
+
+
+ Source Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GF3CalibrationAndOrthLib/GF3CalibrationGecodingBaseFuntion.h b/GF3CalibrationAndOrthLib/GF3CalibrationGecodingBaseFuntion.h
new file mode 100644
index 0000000..07db6ac
--- /dev/null
+++ b/GF3CalibrationAndOrthLib/GF3CalibrationGecodingBaseFuntion.h
@@ -0,0 +1,9 @@
+#pragma once
+#ifndef __GF3CALIBRATIONGECODINGBASEFUNTION__H__
+#define __GF3CALIBRATIONGECODINGBASEFUNTION__H__
+#include "gf3calibrationandorthlib_global.h"
+#include "BaseConstVariable.h"
+
+
+
+#endif // __GF3CALIBRATIONGECODINGBASEFUNTION__H__
\ No newline at end of file
diff --git a/GF3CalibrationAndOrthLib/GF3CalibrationGeoCodingFunCUDA.cu b/GF3CalibrationAndOrthLib/GF3CalibrationGeoCodingFunCUDA.cu
new file mode 100644
index 0000000..671e20d
--- /dev/null
+++ b/GF3CalibrationAndOrthLib/GF3CalibrationGeoCodingFunCUDA.cu
@@ -0,0 +1,50 @@
+#include "GF3CalibrationGeoCodingFunCUDA.cuh"
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include "BaseConstVariable.h"
+#include "GPUTool.cuh"
+
+
+__device__ __host__ float Computrer_polartionConver_rpolf(float inangle, float alpha)
+{
+ float tang = 0.0;
+ if (inangle <= 0.0) {
+ tang = 0.0;
+ }
+ else if (inangle > 90.0) {
+ tang = 90.0;
+ }
+ else {
+ tang = inangle;
+ }
+ tang = tang * PI / 180.0;
+ float tan_val = tanf(tang);
+ float rpol = powf((1.0 + 2.0 * tan_val * tan_val), 2) / powf((1.0 + alpha * tan_val * tan_val), 2);
+ return rpol;
+}
+
+__device__ __host__ double Computrer_polartionConver_rpold(double inangle, double alpha)
+{
+ double tang = 0.0;
+ if (inangle <= 0.0) {
+ tang = 0.0;
+ }
+ else if (inangle > 90.0) {
+ tang = 90.0;
+ }
+ else {
+ tang = inangle;
+ }
+ tang = tang * PI / 180.0;
+ double tan_val = tan(tang);
+ double rpol = pow((1.0 + 2.0 * tan_val * tan_val), 2) / pow((1.0 + alpha * tan_val * tan_val), 2);
+ return rpol;
+}
diff --git a/GF3CalibrationAndOrthLib/GF3CalibrationGeoCodingFunCUDA.cuh b/GF3CalibrationAndOrthLib/GF3CalibrationGeoCodingFunCUDA.cuh
new file mode 100644
index 0000000..f211274
--- /dev/null
+++ b/GF3CalibrationAndOrthLib/GF3CalibrationGeoCodingFunCUDA.cuh
@@ -0,0 +1,33 @@
+#ifndef __GF3CALIBRATIONGEOCODINGFUNCUDA__H__
+#define __GF3CALIBRATIONGEOCODINGFUNCUDA__H__
+#include "gf3calibrationandorthlib_global.h"
+
+
+#include "BaseConstVariable.h"
+#include "GPUTool.cuh"
+#include
+#include
+#include
+#include
+
+///
+/// 㼫תϵfloat
+///
+///
+/// ת
+///
+extern __device__ __host__ float Computrer_polartionConver_rpolf(float inangle, float alpha = 1);
+
+///
+/// 㼫תϵ (double)
+///
+///
+/// ת
+///
+extern __device__ __host__ double Computrer_polartionConver_rpold(double inangle, double alpha = 1);
+
+
+
+
+#endif
+
diff --git a/GF3CalibrationAndOrthLib/gf3calibrationandorthlib_global.h b/GF3CalibrationAndOrthLib/gf3calibrationandorthlib_global.h
new file mode 100644
index 0000000..d28cac9
--- /dev/null
+++ b/GF3CalibrationAndOrthLib/gf3calibrationandorthlib_global.h
@@ -0,0 +1,14 @@
+#pragma once
+#ifndef __GF3CALIBRATIONANDORTHLIB_GLOBAL_H__
+#define __GF3CALIBRATIONANDORTHLIB_GLOBAL_H__
+#include
+
+
+#ifdef GF3CALIBRATIONANDORTHLIB_LIB
+#define GF3CALIBRATIONANDORTHLIB_EXPORT __declspec(dllexport)
+#else
+#define GF3CALIBRATIONANDORTHLIB_EXPORT __declspec(dllimport)
+#endif
+
+
+#endif// __GF3CALIBRATIONANDORTHLIB_GLOBAL_H__
\ No newline at end of file
diff --git a/GF3StripPatchProcess/GF3RDZProcess.cu b/GF3StripPatchProcess/GF3RDZProcess.cu
new file mode 100644
index 0000000..e69de29
diff --git a/GF3StripPatchProcess/GF3StripPatchProcess.vcxproj b/GF3StripPatchProcess/GF3StripPatchProcess.vcxproj
index 48c17f9..678b921 100644
--- a/GF3StripPatchProcess/GF3StripPatchProcess.vcxproj
+++ b/GF3StripPatchProcess/GF3StripPatchProcess.vcxproj
@@ -15,8 +15,7 @@
QtVS_v304
10.0
10.0
- $(MSBuildProjectDirectory)\QtMsBuild
+ $(MSBuildProjectDirectory)\QtMsBuild
@@ -46,11 +45,8 @@
core
release
-
-
+
+
@@ -67,6 +63,11 @@
+
+
+ cufft.lib;cudart.lib;cudadevrt.lib;%(AdditionalDependencies)
+
+
true
@@ -97,7 +98,9 @@
-
+
+
+
diff --git a/GF3StripPatchProcess/GF3StripPatchProcess.vcxproj.filters b/GF3StripPatchProcess/GF3StripPatchProcess.vcxproj.filters
index db47d74..a6c33a5 100644
--- a/GF3StripPatchProcess/GF3StripPatchProcess.vcxproj.filters
+++ b/GF3StripPatchProcess/GF3StripPatchProcess.vcxproj.filters
@@ -21,11 +21,18 @@
{639EADAA-A684-42e4-A9AD-28FC9BCB8F7C}
ts
+
+ {da979fa3-1a37-4b67-aaf3-148de4a4c027}
+
Source Files
-
-
+
+
+ GPULib
+
+
+
\ No newline at end of file
diff --git a/GF3StripPatchProcess/main.cpp b/GF3StripPatchProcess/main.cpp
index 03cd4d5..3b390a8 100644
--- a/GF3StripPatchProcess/main.cpp
+++ b/GF3StripPatchProcess/main.cpp
@@ -1,8 +1,24 @@
+/**
+* @file GF3StripPatchProcess/main.cpp
+* @brief Main entry point for the GF3 Strip Patch Process application.
+* @details GF3Ӱ
+* @author (3045316072@qq.com)
+* @date 2025-05-12
+* @version 1.0
+*/
#include
+
+
+
+
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
+
+
+
+
return a.exec();
}
diff --git a/LAMPDataProcess.sln b/LAMPDataProcess.sln
index 5db6c11..b829429 100644
--- a/LAMPDataProcess.sln
+++ b/LAMPDataProcess.sln
@@ -46,6 +46,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "KJ135WBJYAlgInterfaceToolbo
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GF3StripPatchProcess", "GF3StripPatchProcess\GF3StripPatchProcess.vcxproj", "{6386D3E3-B743-419F-8354-DA48D0B08728}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GF3CalibrationAndOrthLib", "GF3CalibrationAndOrthLib\GF3CalibrationAndOrthLib.vcxproj", "{886F7829-AF74-4F23-B3BE-29B7B3C9843C}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|ARM = Debug|ARM
@@ -224,6 +226,18 @@ Global
{6386D3E3-B743-419F-8354-DA48D0B08728}.Release|x64.Build.0 = Release|x64
{6386D3E3-B743-419F-8354-DA48D0B08728}.Release|x86.ActiveCfg = Release|x64
{6386D3E3-B743-419F-8354-DA48D0B08728}.Release|x86.Build.0 = Release|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Debug|ARM.ActiveCfg = Debug|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Debug|ARM.Build.0 = Debug|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Debug|x64.ActiveCfg = Debug|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Debug|x64.Build.0 = Debug|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Debug|x86.ActiveCfg = Debug|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Debug|x86.Build.0 = Debug|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Release|ARM.ActiveCfg = Release|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Release|ARM.Build.0 = Release|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Release|x64.ActiveCfg = Release|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Release|x64.Build.0 = Release|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Release|x86.ActiveCfg = Release|x64
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C}.Release|x86.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -239,6 +253,7 @@ Global
{8C8CA066-A93A-4098-9A46-B855EFEAADF2} = {2768F9D6-D410-4E88-A479-8336DAF97072}
{80A5854F-6F80-4EC2-9F73-84E0F4DB8D7E} = {2768F9D6-D410-4E88-A479-8336DAF97072}
{D3E9A2CA-7F05-425A-A4B6-416EC20972E8} = {41B1F23D-9119-47A7-B102-34022AF83CDA}
+ {886F7829-AF74-4F23-B3BE-29B7B3C9843C} = {2768F9D6-D410-4E88-A479-8336DAF97072}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {179F0A62-C631-4667-AD03-3780ADE09F41}
diff --git a/Toolbox/KJ135WBJYAlgInterfaceToolbox/KJ135WBJYAlgWidgetComponet.cpp b/Toolbox/KJ135WBJYAlgInterfaceToolbox/KJ135WBJYAlgWidgetComponet.cpp
index 9fdb6bf..0215d97 100644
--- a/Toolbox/KJ135WBJYAlgInterfaceToolbox/KJ135WBJYAlgWidgetComponet.cpp
+++ b/Toolbox/KJ135WBJYAlgInterfaceToolbox/KJ135WBJYAlgWidgetComponet.cpp
@@ -129,8 +129,6 @@ void FileSelectWidget::initUI()
layout->addWidget(filePathEdit);
layout->addWidget(fileSelectButton);
this->setLayout(layout);
-
-
}
QString FileSelectWidget::getValue() const
diff --git a/Toolbox/SimulationSARTool/SimulationSARTool.vcxproj b/Toolbox/SimulationSARTool/SimulationSARTool.vcxproj
index 6c19a14..562d754 100644
--- a/Toolbox/SimulationSARTool/SimulationSARTool.vcxproj
+++ b/Toolbox/SimulationSARTool/SimulationSARTool.vcxproj
@@ -134,7 +134,7 @@
compute_86,sm_86
- cufft.lib;%(AdditionalDependencies);cudart.lib;cudadevrt.lib
+ cufft.lib;cudart.lib;cudadevrt.lib;%(AdditionalDependencies)