修复间接定位法bug

pull/4/head
chenzenghui 2025-02-20 10:00:14 +08:00
parent 2040d42ff8
commit f2bae9aa0e
20 changed files with 110 additions and 48 deletions

View File

@ -138,6 +138,9 @@
<ProjectReference Include="..\GPUBaseLib\GPUBaseLib.vcxproj"> <ProjectReference Include="..\GPUBaseLib\GPUBaseLib.vcxproj">
<Project>{b8b40c54-f7fe-4809-b6fb-8bc014570d7b}</Project> <Project>{b8b40c54-f7fe-4809-b6fb-8bc014570d7b}</Project>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\ImageshowTool\ImageshowTool.vcxproj">
<Project>{8c8ca066-a93a-4098-9a46-b855efeaadf2}</Project>
</ProjectReference>
<ProjectReference Include="..\LAMPDataProcessEXE\LAMPDataProcessEXE.vcxproj"> <ProjectReference Include="..\LAMPDataProcessEXE\LAMPDataProcessEXE.vcxproj">
<Project>{4e6e79a3-048c-4fb4-bbb0-43c518a3e6d4}</Project> <Project>{4e6e79a3-048c-4fb4-bbb0-43c518a3e6d4}</Project>
</ProjectReference> </ProjectReference>
@ -150,9 +153,6 @@
<ProjectReference Include="..\Toolbox\BaseToolbox\BaseToolbox.vcxproj"> <ProjectReference Include="..\Toolbox\BaseToolbox\BaseToolbox.vcxproj">
<Project>{070c157e-3c30-4e2b-a80c-cbc7b74df03f}</Project> <Project>{070c157e-3c30-4e2b-a80c-cbc7b74df03f}</Project>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\Toolbox\ImageshowTool\ImageshowTool.vcxproj">
<Project>{8c8ca066-a93a-4098-9a46-b855efeaadf2}</Project>
</ProjectReference>
<ProjectReference Include="..\Toolbox\LAMPScatterTool\LAMPScatterTool.vcxproj"> <ProjectReference Include="..\Toolbox\LAMPScatterTool\LAMPScatterTool.vcxproj">
<Project>{d603a623-132d-4304-ab03-638fc438f084}</Project> <Project>{d603a623-132d-4304-ab03-638fc438f084}</Project>
</ProjectReference> </ProjectReference>

View File

@ -218,6 +218,17 @@ void ImageShowDialogClass::load_double_data(float* data, long rows, long cols, Q
this->load_double_MatrixX_data(dataArr, name); this->load_double_MatrixX_data(dataArr, name);
} }
void ImageShowDialogClass::load_double_data(double* data, long rows, long cols, QString name)
{
Eigen::MatrixXd dataArr = Eigen::MatrixXd::Zero(rows, cols);
for (long i = 0; i < rows; i++) {
for (long j = 0; j < cols; j++) {
dataArr(i, j) = data[i * cols + j];
}
}
this->load_double_MatrixX_data(dataArr, name);
}
void ImageShowDialogClass::load_double_data(float* Xs, float* Ys, float* data, long rows, long cols, QString name) void ImageShowDialogClass::load_double_data(float* Xs, float* Ys, float* data, long rows, long cols, QString name)
{ {

View File

@ -134,6 +134,7 @@ public:
void load_double_MatrixX_data(Eigen::MatrixXd data, QString name); void load_double_MatrixX_data(Eigen::MatrixXd data, QString name);
void load_double_MatrixX_data(Eigen::MatrixXd X,Eigen::MatrixXd Y,Eigen::MatrixXd data, QString name); void load_double_MatrixX_data(Eigen::MatrixXd X,Eigen::MatrixXd Y,Eigen::MatrixXd data, QString name);
void load_double_data(float* data, long rows, long cols, QString name); void load_double_data(float* data, long rows, long cols, QString name);
void load_double_data(double* data, long rows, long cols, QString name);
void load_double_data(float* Xs,float* Ys,float* data, long rows, long cols, QString name); void load_double_data(float* Xs,float* Ys,float* data, long rows, long cols, QString name);
void remove_Data( QString name); void remove_Data( QString name);

View File

@ -62,9 +62,9 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
<IncludePath>..\..\BaseCommonLibrary;..\..\BaseCommonLibrary\BaseTool;..\..\BaseCommonLibrary\ToolAbstract;..\..\GPUBaseLib\GPUTool;.\Imageshow;$(VC_IncludePath);$(WindowsSDK_IncludePath)</IncludePath> <IncludePath>..\BaseCommonLibrary;..\BaseCommonLibrary\BaseTool;..\BaseCommonLibrary\ToolAbstract;..\GPUBaseLib\GPUTool;.\Imageshow;$(VC_IncludePath);$(WindowsSDK_IncludePath)</IncludePath>
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\Toolbox\</OutDir> <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
<TargetName>PluginTool_$(ProjectName)</TargetName> <TargetName>$(ProjectName)</TargetName>
<CopyLocalProjectReference>true</CopyLocalProjectReference> <CopyLocalProjectReference>true</CopyLocalProjectReference>
<CopyCppRuntimeToOutputDir>true</CopyCppRuntimeToOutputDir> <CopyCppRuntimeToOutputDir>true</CopyCppRuntimeToOutputDir>
</PropertyGroup> </PropertyGroup>
@ -123,14 +123,11 @@
<QtRcc Include="Imageshow\qcustomplot.qrc" /> <QtRcc Include="Imageshow\qcustomplot.qrc" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\..\BaseCommonLibrary\BaseCommonLibrary.vcxproj"> <ProjectReference Include="..\BaseCommonLibrary\BaseCommonLibrary.vcxproj">
<Project>{872ecd6f-30e3-4a1b-b17c-15e87d373ff6}</Project> <Project>{872ecd6f-30e3-4a1b-b17c-15e87d373ff6}</Project>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\..\RasterMainWidgetGUI\RasterMainWidgetGUI.vcxproj"> <ProjectReference Include="..\GPUBaseLib\GPUBaseLib.vcxproj">
<Project>{e56b3878-a3dc-41a4-abf3-b628816d0d64}</Project> <Project>{b8b40c54-f7fe-4809-b6fb-8bc014570d7b}</Project>
</ProjectReference>
<ProjectReference Include="..\..\RasterProcessToolWidget\RasterProcessTool.vcxproj">
<Project>{7ef67daa-dbc0-4b7f-80e8-11b4d2cb7ec2}</Project>
</ProjectReference> </ProjectReference>
</ItemGroup> </ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />

View File

@ -3,21 +3,21 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17 # Visual Studio Version 17
VisualStudioVersion = 17.10.35122.118 VisualStudioVersion = 17.10.35122.118
MinimumVisualStudioVersion = 10.0.40219.1 MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RasterProcessToolWidget", ".\RasterProcessToolWidget\RasterProcessTool.vcxproj", "{7EF67DAA-DBC0-4B7F-80E8-11B4D2CB7EC2}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RasterProcessToolWidget", "RasterProcessToolWidget\RasterProcessTool.vcxproj", "{7EF67DAA-DBC0-4B7F-80E8-11B4D2CB7EC2}"
ProjectSection(ProjectDependencies) = postProject ProjectSection(ProjectDependencies) = postProject
{B8B40C54-F7FE-4809-B6FB-8BC014570D7B} = {B8B40C54-F7FE-4809-B6FB-8BC014570D7B} {B8B40C54-F7FE-4809-B6FB-8BC014570D7B} = {B8B40C54-F7FE-4809-B6FB-8BC014570D7B}
EndProjectSection EndProjectSection
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BaseCommonLibrary", ".\BaseCommonLibrary\BaseCommonLibrary.vcxproj", "{872ECD6F-30E3-4A1B-B17C-15E87D373FF6}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BaseCommonLibrary", "BaseCommonLibrary\BaseCommonLibrary.vcxproj", "{872ECD6F-30E3-4A1B-B17C-15E87D373FF6}"
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BaseToolbox", ".\Toolbox\BaseToolbox\BaseToolbox.vcxproj", "{070C157E-3C30-4E2B-A80C-CBC7B74DF03F}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BaseToolbox", "Toolbox\BaseToolbox\BaseToolbox.vcxproj", "{070C157E-3C30-4E2B-A80C-CBC7B74DF03F}"
ProjectSection(ProjectDependencies) = postProject ProjectSection(ProjectDependencies) = postProject
{B8B40C54-F7FE-4809-B6FB-8BC014570D7B} = {B8B40C54-F7FE-4809-B6FB-8BC014570D7B} {B8B40C54-F7FE-4809-B6FB-8BC014570D7B} = {B8B40C54-F7FE-4809-B6FB-8BC014570D7B}
EndProjectSection EndProjectSection
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LAMPScatterTool", ".\Toolbox\LAMPScatterTool\LAMPScatterTool.vcxproj", "{D603A623-132D-4304-AB03-638FC438F084}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LAMPScatterTool", "Toolbox\LAMPScatterTool\LAMPScatterTool.vcxproj", "{D603A623-132D-4304-AB03-638FC438F084}"
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SimulationSARTool", ".\Toolbox\SimulationSARTool\SimulationSARTool.vcxproj", "{ED06DFCD-4B9F-41F7-8F25-1823C2398142}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SimulationSARTool", "Toolbox\SimulationSARTool\SimulationSARTool.vcxproj", "{ED06DFCD-4B9F-41F7-8F25-1823C2398142}"
ProjectSection(ProjectDependencies) = postProject ProjectSection(ProjectDependencies) = postProject
{B8B40C54-F7FE-4809-B6FB-8BC014570D7B} = {B8B40C54-F7FE-4809-B6FB-8BC014570D7B} {B8B40C54-F7FE-4809-B6FB-8BC014570D7B} = {B8B40C54-F7FE-4809-B6FB-8BC014570D7B}
EndProjectSection EndProjectSection
@ -26,17 +26,17 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ToolBox", "ToolBox", "{41B1
EndProject EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "BaseLib", "BaseLib", "{2768F9D6-D410-4E88-A479-8336DAF97072}" Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "BaseLib", "BaseLib", "{2768F9D6-D410-4E88-A479-8336DAF97072}"
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ImageshowTool", ".\Toolbox\ImageshowTool\ImageshowTool.vcxproj", "{8C8CA066-A93A-4098-9A46-B855EFEAADF2}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALLRelease", "ALLRelease\ALLRelease.vcxproj", "{8A71D19D-9AC6-42E9-81EC-9E82AF8075B8}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALLRelease", ".\ALLRelease\ALLRelease.vcxproj", "{8A71D19D-9AC6-42E9-81EC-9E82AF8075B8}"
EndProject EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "MainWidget", "MainWidget", "{6505E2BA-06A2-447B-BC85-8CF1A81359BC}" Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "MainWidget", "MainWidget", "{6505E2BA-06A2-447B-BC85-8CF1A81359BC}"
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LAMPDataProcessEXE", ".\LAMPDataProcessEXE\LAMPDataProcessEXE.vcxproj", "{4E6E79A3-048C-4FB4-BBB0-43C518A3E6D4}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LAMPDataProcessEXE", "LAMPDataProcessEXE\LAMPDataProcessEXE.vcxproj", "{4E6E79A3-048C-4FB4-BBB0-43C518A3E6D4}"
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GPUBaseLib", ".\GPUBaseLib\GPUBaseLib.vcxproj", "{B8B40C54-F7FE-4809-B6FB-8BC014570D7B}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GPUBaseLib", "GPUBaseLib\GPUBaseLib.vcxproj", "{B8B40C54-F7FE-4809-B6FB-8BC014570D7B}"
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RasterMainWidgetGUI", ".\RasterMainWidgetGUI\RasterMainWidgetGUI.vcxproj", "{E56B3878-A3DC-41A4-ABF3-B628816D0D64}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RasterMainWidgetGUI", "RasterMainWidgetGUI\RasterMainWidgetGUI.vcxproj", "{E56B3878-A3DC-41A4-ABF3-B628816D0D64}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ImageshowTool", "ImageshowTool\ImageshowTool.vcxproj", "{8C8CA066-A93A-4098-9A46-B855EFEAADF2}"
EndProject EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -86,14 +86,6 @@ Global
{ED06DFCD-4B9F-41F7-8F25-1823C2398142}.Release|x64.Build.0 = Release|x64 {ED06DFCD-4B9F-41F7-8F25-1823C2398142}.Release|x64.Build.0 = Release|x64
{ED06DFCD-4B9F-41F7-8F25-1823C2398142}.Release|x86.ActiveCfg = Release|x64 {ED06DFCD-4B9F-41F7-8F25-1823C2398142}.Release|x86.ActiveCfg = Release|x64
{ED06DFCD-4B9F-41F7-8F25-1823C2398142}.Release|x86.Build.0 = Release|x64 {ED06DFCD-4B9F-41F7-8F25-1823C2398142}.Release|x86.Build.0 = Release|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Debug|x64.ActiveCfg = Debug|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Debug|x64.Build.0 = Debug|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Debug|x86.ActiveCfg = Debug|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Debug|x86.Build.0 = Debug|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Release|x64.ActiveCfg = Release|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Release|x64.Build.0 = Release|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Release|x86.ActiveCfg = Release|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Release|x86.Build.0 = Release|x64
{8A71D19D-9AC6-42E9-81EC-9E82AF8075B8}.Debug|x64.ActiveCfg = Debug|x64 {8A71D19D-9AC6-42E9-81EC-9E82AF8075B8}.Debug|x64.ActiveCfg = Debug|x64
{8A71D19D-9AC6-42E9-81EC-9E82AF8075B8}.Debug|x64.Build.0 = Debug|x64 {8A71D19D-9AC6-42E9-81EC-9E82AF8075B8}.Debug|x64.Build.0 = Debug|x64
{8A71D19D-9AC6-42E9-81EC-9E82AF8075B8}.Debug|x86.ActiveCfg = Debug|Win32 {8A71D19D-9AC6-42E9-81EC-9E82AF8075B8}.Debug|x86.ActiveCfg = Debug|Win32
@ -126,6 +118,14 @@ Global
{E56B3878-A3DC-41A4-ABF3-B628816D0D64}.Release|x64.Build.0 = Release|x64 {E56B3878-A3DC-41A4-ABF3-B628816D0D64}.Release|x64.Build.0 = Release|x64
{E56B3878-A3DC-41A4-ABF3-B628816D0D64}.Release|x86.ActiveCfg = Release|x64 {E56B3878-A3DC-41A4-ABF3-B628816D0D64}.Release|x86.ActiveCfg = Release|x64
{E56B3878-A3DC-41A4-ABF3-B628816D0D64}.Release|x86.Build.0 = Release|x64 {E56B3878-A3DC-41A4-ABF3-B628816D0D64}.Release|x86.Build.0 = Release|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Debug|x64.ActiveCfg = Debug|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Debug|x64.Build.0 = Debug|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Debug|x86.ActiveCfg = Debug|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Debug|x86.Build.0 = Debug|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Release|x64.ActiveCfg = Release|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Release|x64.Build.0 = Release|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Release|x86.ActiveCfg = Release|x64
{8C8CA066-A93A-4098-9A46-B855EFEAADF2}.Release|x86.Build.0 = Release|x64
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE
@ -136,9 +136,9 @@ Global
{070C157E-3C30-4E2B-A80C-CBC7B74DF03F} = {41B1F23D-9119-47A7-B102-34022AF83CDA} {070C157E-3C30-4E2B-A80C-CBC7B74DF03F} = {41B1F23D-9119-47A7-B102-34022AF83CDA}
{D603A623-132D-4304-AB03-638FC438F084} = {41B1F23D-9119-47A7-B102-34022AF83CDA} {D603A623-132D-4304-AB03-638FC438F084} = {41B1F23D-9119-47A7-B102-34022AF83CDA}
{ED06DFCD-4B9F-41F7-8F25-1823C2398142} = {41B1F23D-9119-47A7-B102-34022AF83CDA} {ED06DFCD-4B9F-41F7-8F25-1823C2398142} = {41B1F23D-9119-47A7-B102-34022AF83CDA}
{8C8CA066-A93A-4098-9A46-B855EFEAADF2} = {41B1F23D-9119-47A7-B102-34022AF83CDA}
{B8B40C54-F7FE-4809-B6FB-8BC014570D7B} = {2768F9D6-D410-4E88-A479-8336DAF97072} {B8B40C54-F7FE-4809-B6FB-8BC014570D7B} = {2768F9D6-D410-4E88-A479-8336DAF97072}
{E56B3878-A3DC-41A4-ABF3-B628816D0D64} = {6505E2BA-06A2-447B-BC85-8CF1A81359BC} {E56B3878-A3DC-41A4-ABF3-B628816D0D64} = {6505E2BA-06A2-447B-BC85-8CF1A81359BC}
{8C8CA066-A93A-4098-9A46-B855EFEAADF2} = {2768F9D6-D410-4E88-A479-8336DAF97072}
EndGlobalSection EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {179F0A62-C631-4667-AD03-3780ADE09F41} SolutionGuid = {179F0A62-C631-4667-AD03-3780ADE09F41}

View File

@ -115,6 +115,9 @@
<ProjectReference Include="..\GPUBaseLib\GPUBaseLib.vcxproj"> <ProjectReference Include="..\GPUBaseLib\GPUBaseLib.vcxproj">
<Project>{b8b40c54-f7fe-4809-b6fb-8bc014570d7b}</Project> <Project>{b8b40c54-f7fe-4809-b6fb-8bc014570d7b}</Project>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\ImageshowTool\ImageshowTool.vcxproj">
<Project>{8c8ca066-a93a-4098-9a46-b855efeaadf2}</Project>
</ProjectReference>
<ProjectReference Include="..\RasterMainWidgetGUI\RasterMainWidgetGUI.vcxproj"> <ProjectReference Include="..\RasterMainWidgetGUI\RasterMainWidgetGUI.vcxproj">
<Project>{e56b3878-a3dc-41a4-abf3-b628816d0d64}</Project> <Project>{e56b3878-a3dc-41a4-abf3-b628816d0d64}</Project>
</ProjectReference> </ProjectReference>

View File

@ -186,6 +186,9 @@
<ProjectReference Include="..\GPUBaseLib\GPUBaseLib.vcxproj"> <ProjectReference Include="..\GPUBaseLib\GPUBaseLib.vcxproj">
<Project>{b8b40c54-f7fe-4809-b6fb-8bc014570d7b}</Project> <Project>{b8b40c54-f7fe-4809-b6fb-8bc014570d7b}</Project>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\ImageshowTool\ImageshowTool.vcxproj">
<Project>{8c8ca066-a93a-4098-9a46-b855efeaadf2}</Project>
</ProjectReference>
<ProjectReference Include="..\RasterProcessToolWidget\RasterProcessTool.vcxproj"> <ProjectReference Include="..\RasterProcessToolWidget\RasterProcessTool.vcxproj">
<Project>{7ef67daa-dbc0-4b7f-80e8-11b4d2cb7ec2}</Project> <Project>{7ef67daa-dbc0-4b7f-80e8-11b4d2cb7ec2}</Project>
</ProjectReference> </ProjectReference>

View File

@ -8,6 +8,7 @@
#include "LookTableSimulationComputer.cuh" #include "LookTableSimulationComputer.cuh"
#include <QDebug> #include <QDebug>
#include "ImageShowDialogClass.h"
// dingy // dingy
@ -81,7 +82,7 @@ namespace LookTableSimualtionMainProcessSpace {
if (looktableflag|| checkBoxIncAngle) { if (looktableflag|| checkBoxIncAngle) {
outLookTablePath = JoinPath(outDirPath, sateName+"__looktable.bin"); outLookTablePath = JoinPath(outDirPath, sateName+"_looktable.bin");
LookTableSimulationDopplerProcess( LookTableSimulationDopplerProcess(
@ -104,7 +105,7 @@ namespace LookTableSimualtionMainProcessSpace {
); );
} }
if (checkBoxIncAngle) { if (checkBoxIncAngle) {
outIncPath = JoinPath(outDirPath, sateName + "__incAngle.bin"); outIncPath = JoinPath(outDirPath, sateName + "_incAngle.bin");
@ -255,23 +256,36 @@ namespace LookTableSimualtionMainProcessSpace {
std::shared_ptr<double> device_demY((double*)mallocCUDADevice(sizeof(double) * GPUMemoryline * demimg.width), FreeCUDADevice); std::shared_ptr<double> device_demY((double*)mallocCUDADevice(sizeof(double) * GPUMemoryline * demimg.width), FreeCUDADevice);
std::shared_ptr<double> device_demZ((double*)mallocCUDADevice(sizeof(double) * GPUMemoryline * demimg.width), FreeCUDADevice); std::shared_ptr<double> device_demZ((double*)mallocCUDADevice(sizeof(double) * GPUMemoryline * demimg.width), FreeCUDADevice);
//
std::shared_ptr<ImageShowDialogClass> datashowptr(new ImageShowDialogClass);
// 处理复制结果 // 处理复制结果
long rowcount = 0; long rowcount = GPUMemoryline;
long colcount = 0; long colcount = demimg.width;
//rowcount = 1;
//colcount = 1;
//long testRid = demimg.height / 2;
//long testCid = demimg.width / 2;
double fact_lamda = 1 / lamda; double fact_lamda = 1 / lamda;
for (long rid = 0; rid < demimg.height; rid = rid + GPUMemoryline) { for (long rid = 0; rid < demimg.height; rid = rid + GPUMemoryline) {
rowcount = GPUMemoryline;
colcount = demimg.width;
qDebug() << "computer read file : " << rid << "~" << rowcount + rid << "\t:" << demimg.height; qDebug() << "computer read file : " << rid << "~" << rowcount + rid << "\t:" << demimg.height;
std::shared_ptr<double> demX = readDataArr<double>(demimg, rid, 0, rowcount, colcount, 1,GDALREADARRCOPYMETHOD::MEMCPYMETHOD);// ĐĐÁĐĘýĐŢ¸Ä std::shared_ptr<double> demX = readDataArr<double>(demimg, rid, 0, rowcount, colcount, 1,GDALREADARRCOPYMETHOD::VARIABLEMETHOD);// ÐÐÁÐÊýÐÞ¸Ä
std::shared_ptr<double> demY = readDataArr<double>(demimg, rid, 0, rowcount, colcount, 2,GDALREADARRCOPYMETHOD::MEMCPYMETHOD); std::shared_ptr<double> demY = readDataArr<double>(demimg, rid, 0, rowcount, colcount, 2,GDALREADARRCOPYMETHOD::VARIABLEMETHOD);
std::shared_ptr<double> demZ = readDataArr<double>(demimg, rid, 0, rowcount, colcount, 3,GDALREADARRCOPYMETHOD::MEMCPYMETHOD); std::shared_ptr<double> demZ = readDataArr<double>(demimg, rid, 0, rowcount, colcount, 3,GDALREADARRCOPYMETHOD::VARIABLEMETHOD);
//std::shared_ptr<double> demX = readDataArr<double>(demimg, rid, testCid, rowcount, colcount, 1, GDALREADARRCOPYMETHOD::VARIABLEMETHOD);// ÐÐÁÐÊýÐÞ¸Ä
//std::shared_ptr<double> demY = readDataArr<double>(demimg, rid, testCid, rowcount, colcount, 2, GDALREADARRCOPYMETHOD::VARIABLEMETHOD);
//std::shared_ptr<double> demZ = readDataArr<double>(demimg, rid, testCid, rowcount, colcount, 3, GDALREADARRCOPYMETHOD::VARIABLEMETHOD);
//demX.get()[0]=-1407793.922129;
//demY.get()[0]=5465044.940211;
//demZ.get()[0]=2963219.736386;
// 数据复制 // 数据复制
memcpy(host_demX.get(), demX.get(), sizeof(double)* rowcount* colcount); memcpy(host_demX.get(), demX.get(), sizeof(double)* rowcount* colcount);
memcpy(host_demY.get(), demY.get(), sizeof(double)* rowcount* colcount); memcpy(host_demY.get(), demY.get(), sizeof(double)* rowcount* colcount);
@ -303,9 +317,14 @@ namespace LookTableSimualtionMainProcessSpace {
DeviceToHost(host_Rid.get(), device_Rid.get(), sizeof(float)* GPUMemoryline* demimg.width); DeviceToHost(host_Rid.get(), device_Rid.get(), sizeof(float)* GPUMemoryline* demimg.width);
DeviceToHost(host_Cid.get(), device_Cid.get(), sizeof(float)* GPUMemoryline* demimg.width); DeviceToHost(host_Cid.get(), device_Cid.get(), sizeof(float)* GPUMemoryline* demimg.width);
qDebug() << "GPU computer finished!!: " << rid << "~" << rowcount + rid << "\t:" << demimg.height; qDebug() << "GPU computer finished!!: " << rid << "~" << rowcount + rid << "\t:" << demimg.height;
//exit(-1);
// 数据存储 // 数据存储
outLookTable.saveImage(host_Rid, rid, 0, rowcount, colcount,1); outLookTable.saveImage(host_Rid, rid, 0, rowcount, colcount,1);
outLookTable.saveImage(host_Cid, rid, 0, rowcount, colcount,2); outLookTable.saveImage(host_Cid, rid, 0, rowcount, colcount,2);
datashowptr->load_double_data(host_Rid.get(), rowcount, colcount, QString("host_Rid"));
datashowptr->exec();
qDebug() << "GPU computer result write finished: " << rid << "~" << rowcount + rid << "\t:" << demimg.height; qDebug() << "GPU computer result write finished: " << rid << "~" << rowcount + rid << "\t:" << demimg.height;
} }

View File

@ -53,7 +53,7 @@ __global__ void Kernel_RDProcess_doppler(
double demz = demZ[idx]; double demz = demZ[idx];
float Rd_r = -1; float Rd_r = -1;
float Rd_c = -1; float Rd_c = -1;
double dt = 1 / PRF / 1000; double dt = 1.0 / PRF / 3;
double Spx = 0, Spy = 0, Spz = 0, Svx = 0, Svy = 0, Svz = 0; double Spx = 0, Spy = 0, Spz = 0, Svx = 0, Svy = 0, Svz = 0;
double Rx = 0, Ry = 0, Rz = 0,R = 0; double Rx = 0, Ry = 0, Rz = 0,R = 0;
@ -104,14 +104,39 @@ __global__ void Kernel_RDProcess_doppler(
// iter // iter
inct = dt * (dp2 - dpn1) / (dp1 - dp2); inct = dt * (dp2 - dpn1) / (dp1 - dp2);
if (abs(inct) <= dt ||(abs(dp1 - dp2) < 1e-9)) { //printf("ti: %10.6f\n", ti);
//printf("inct: %10.6f\n", inct);
//printf("demx: %10.6f\n", demx);
//printf("demy: %10.6f\n", demy);
//printf("demz: %10.6f\n", demz);
//printf("Rd_r: %10.6f\n", Rd_r);
//printf("Rd_c: %10.6f\n", Rd_c);
//printf("dt: %10.6f\n", dt);
//printf("Spx: %10.6f\n", Spx);
//printf("Spy: %10.6f\n", Spy);
//printf("Spz: %10.6f\n", Spz);
//printf("Svx: %10.6f\n", Svx);
//printf("Svy: %10.6f\n", Svy);
//printf("Svz: %10.6f\n", Svz);
//printf("Rx: %10.6f\n", Rx);
//printf("Ry: %10.6f\n", Ry);
//printf("Rz: %10.6f\n", Rz);
//printf("R: %10.6f\n", R);
//printf("dp1: %10.6f\n", dp1);
//printf("dpn1: %10.6f\n", dpn1);
//printf("dp2: %10.6f\n", dp2);
//printf("dpn2: %10.6f\n", dpn2);
if (abs(inct) <= dt||isnan(inct) ) {
Rd_r = (ti - starttime) * PRF; Rd_r = (ti - starttime) * PRF;
Rd_c = 2 * (R - nearRange) / LIGHTSPEED * Fs; Rd_c = 2 * (R - nearRange) / LIGHTSPEED * Fs;
//printf("ti: %10.6f,starttime:%10.6f,PRF:%10.6f\n", ti, starttime, PRF);
outRidx[idx] = Rd_r; outRidx[idx] = Rd_r;
outCidx[idx] = Rd_c; outCidx[idx] = Rd_c;
return; return;
} }
ti = ti - inct; ti = ti + inct;
} }
outRidx[idx] = -1; outRidx[idx] = -1;
outCidx[idx] = -1; outCidx[idx] = -1;

View File

@ -114,6 +114,6 @@ void QSimulationLookTableDialog::onaccepted()
); );
QMessageBox::information(this, u8"info", u8"completed!!!");
} }

View File

@ -64,7 +64,7 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
<IncludePath>..\..\BaseCommonLibrary;..\..\BaseCommonLibrary\BaseTool;..\..\BaseCommonLibrary\ToolAbstract;..\..\GPUBaseLib\GPUTool;.\SimulationSAR;.;..\..\LAMPSARProcessProgram\ToolBoxManager;..\..\RasterMainWidgetGUI\RasterMainWidget;..\..\RasterProcessToolWidget;..\..\RasterMainWidgetGUI;.\PowerSimulationIncoherent;$(VC_IncludePath);$(WindowsSDK_IncludePath)</IncludePath> <IncludePath>..\..\BaseCommonLibrary;..\..\BaseCommonLibrary\BaseTool;..\..\BaseCommonLibrary\ToolAbstract;..\..\GPUBaseLib\GPUTool;.\SimulationSAR;.;..\..\LAMPSARProcessProgram\ToolBoxManager;..\..\RasterMainWidgetGUI\RasterMainWidget;..\..\RasterProcessToolWidget;..\..\RasterMainWidgetGUI;.\PowerSimulationIncoherent;..\..\ImageshowTool;..\..\ImageshowTool\Imageshow;$(VC_IncludePath);$(WindowsSDK_IncludePath)</IncludePath>
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\Toolbox\</OutDir> <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\Toolbox\</OutDir>
<TargetName>PluginTool_$(ProjectName)</TargetName> <TargetName>PluginTool_$(ProjectName)</TargetName>
<CopyLocalProjectReference>true</CopyLocalProjectReference> <CopyLocalProjectReference>true</CopyLocalProjectReference>
@ -173,6 +173,9 @@
<ProjectReference Include="..\..\GPUBaseLib\GPUBaseLib.vcxproj"> <ProjectReference Include="..\..\GPUBaseLib\GPUBaseLib.vcxproj">
<Project>{b8b40c54-f7fe-4809-b6fb-8bc014570d7b}</Project> <Project>{b8b40c54-f7fe-4809-b6fb-8bc014570d7b}</Project>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\..\ImageshowTool\ImageshowTool.vcxproj">
<Project>{8c8ca066-a93a-4098-9a46-b855efeaadf2}</Project>
</ProjectReference>
<ProjectReference Include="..\..\RasterMainWidgetGUI\RasterMainWidgetGUI.vcxproj"> <ProjectReference Include="..\..\RasterMainWidgetGUI\RasterMainWidgetGUI.vcxproj">
<Project>{e56b3878-a3dc-41a4-abf3-b628816d0d64}</Project> <Project>{e56b3878-a3dc-41a4-abf3-b628816d0d64}</Project>
</ProjectReference> </ProjectReference>