修复了 数据读写函数的bug,兼容以前的函数调用
parent
f426ce1f1d
commit
435720db1b
|
@ -301,7 +301,7 @@ void BASECONSTVARIABLEAPI testOutClsArr(QString filename, long* amp, long rowc
|
|||
|
||||
//--------------------- 图像文件读写 ------------------------------
|
||||
template<typename T>
|
||||
inline std::shared_ptr<T> readDataArr(gdalImage& imgds, int start_row, int start_col, int& rows_count, int& cols_count, int band_ids, GDALREADARRCOPYMETHOD method)
|
||||
inline std::shared_ptr<T> readDataArr(gdalImage& imgds, long start_row, long start_col, long& rows_count, long& cols_count, int band_ids, GDALREADARRCOPYMETHOD method)
|
||||
{
|
||||
std::shared_ptr<T> result = nullptr;
|
||||
|
||||
|
@ -498,9 +498,9 @@ inline std::shared_ptr<T> readDataArr(gdalImage& imgds, int start_row, int start
|
|||
// GDALDestroy(); // or, DllMain at DLL_PROCESS_DETACH
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
template<typename T>
|
||||
inline std::shared_ptr<T> readDataArrComplex(gdalImageComplex& imgds, int start_row, int start_col, int& rows_count, int& cols_count, int band_ids, GDALREADARRCOPYMETHOD method)
|
||||
inline std::shared_ptr<T> readDataArrComplex(gdalImageComplex& imgds, long start_row, long start_col, long& rows_count, long& cols_count, int band_ids, GDALREADARRCOPYMETHOD method)
|
||||
{
|
||||
std::shared_ptr<T> result = nullptr;
|
||||
|
||||
|
|
|
@ -257,8 +257,8 @@ namespace LookTableSimualtionMainProcessSpace {
|
|||
|
||||
// 处理复制结果
|
||||
|
||||
int rowcount = 0;
|
||||
int colcount = 0;
|
||||
long rowcount = 0;
|
||||
long colcount = 0;
|
||||
double fact_lamda = 1 / lamda;
|
||||
for (long rid = 0; rid < demimg.height; rid = rid + GPUMemoryline) {
|
||||
rowcount = GPUMemoryline;
|
||||
|
@ -284,16 +284,16 @@ namespace LookTableSimualtionMainProcessSpace {
|
|||
device_demX.get(), device_demY.get(), device_demZ.get(),
|
||||
device_Rid.get(), device_Cid.get(),
|
||||
rowcount, colcount,
|
||||
starttime, nearRange, farRange,
|
||||
PRF, Fs,
|
||||
fact_lamda,
|
||||
Xp0, Yp0, Zp0, Xv0, Yv0, Zv0,
|
||||
Xp1, Yp1, Zp1, Xv1, Yv1, Zv1,
|
||||
Xp2, Yp2, Zp2, Xv2, Yv2, Zv2,
|
||||
Xp3, Yp3, Zp3, Xv3, Yv3, Zv3,
|
||||
Xp4, Yp4, Zp4, Xv4, Yv4, Zv4,
|
||||
Xp5, Yp5, Zp5, Xv5, Yv5, Zv5,
|
||||
dopplerRefrenceTime, r0, r1, r2, r3, r4,
|
||||
starttime, nearRange, farRange,
|
||||
PRF, Fs,
|
||||
fact_lamda);
|
||||
dopplerRefrenceTime, r0, r1, r2, r3, r4);
|
||||
|
||||
|
||||
// GPU -> 内存
|
||||
|
|
|
@ -126,16 +126,18 @@ void RDProcess_dopplerGPU(
|
|||
double* demX, double* demY, double* demZ,
|
||||
float* outRidx, float* outCidx,
|
||||
long rowcount, long colcount,
|
||||
double starttime, double nearRange, double farRange,
|
||||
double PRF, double Fs,
|
||||
double fact_lamda,
|
||||
double Xp0, double Yp0, double Zp0, double Xv0, double Yv0, double Zv0,
|
||||
double Xp1, double Yp1, double Zp1, double Xv1, double Yv1, double Zv1,
|
||||
double Xp2, double Yp2, double Zp2, double Xv2, double Yv2, double Zv2,
|
||||
double Xp3, double Yp3, double Zp3, double Xv3, double Yv3, double Zv3,
|
||||
double Xp4, double Yp4, double Zp4, double Xv4, double Yv4, double Zv4,
|
||||
double Xp5, double Yp5, double Zp5, double Xv5, double Yv5, double Zv5,
|
||||
double reftime, double r0, double r1, double r2, double r3, double r4,
|
||||
double starttime, double nearRange, double farRange,
|
||||
double PRF, double Fs,
|
||||
double fact_lamda)
|
||||
double reftime, double r0, double r1, double r2, double r3, double r4
|
||||
|
||||
)
|
||||
{
|
||||
long pixelcount = rowcount * colcount;
|
||||
int numBlocks = (pixelcount + BLOCK_SIZE - 1) / BLOCK_SIZE;
|
||||
|
|
|
@ -16,36 +16,23 @@ extern __device__ __host__ double getPolyfitNumber(double x, double a0, double a
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//
|
||||
extern "C" void RDProcess_dopplerGPU(
|
||||
double* demX, double* demY, double* demZ, // 处理入射坐标
|
||||
float* outRidx,float* outCidx, // 输出 行列数
|
||||
long rowcount,long colcount,
|
||||
|
||||
double starttime, double nearRange, double farRange,
|
||||
double PRF, double Fs,
|
||||
double fact_lamda, // lamda ľšĘý
|
||||
|
||||
double Xp0 = 0, double Yp0 = 0,double Zp0 = 0,double Xv0 = 0,double Yv0 = 0,double Zv0 = 0, // 轨道参数
|
||||
double Xp1 = 0, double Yp1 = 0,double Zp1 = 0,double Xv1 = 0,double Yv1 = 0,double Zv1 = 0,
|
||||
double Xp2 = 0, double Yp2 = 0,double Zp2 = 0,double Xv2 = 0,double Yv2 = 0,double Zv2 = 0,
|
||||
double Xp3 = 0, double Yp3 = 0,double Zp3 = 0,double Xv3 = 0,double Yv3 = 0,double Zv3 = 0,
|
||||
double Xp4 = 0, double Yp4 = 0,double Zp4 = 0,double Xv4 = 0,double Yv4 = 0,double Zv4 = 0,
|
||||
double Xp5 = 0, double Yp5 = 0,double Zp5 = 0,double Xv5 = 0,double Yv5 = 0,double Zv5 = 0,
|
||||
double reftime=0, // 轨道参数
|
||||
double r0 = 0, double r1 = 0, double r2 = 0, double r3 = 0, double r4 = 0,
|
||||
|
||||
double starttime,// 成像参数
|
||||
double nearRange,
|
||||
double farRange,
|
||||
double PRF,
|
||||
double Fs,
|
||||
double fact_lamda // lamda 倒数
|
||||
|
||||
double reftime=0,double r0 = 0, double r1 = 0, double r2 = 0, double r3 = 0, double r4 = 0
|
||||
);
|
||||
|
||||
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
#include <QMessageBox>
|
||||
#include "GPUTool.cuh"
|
||||
#include "GPUTBPImage.cuh"
|
||||
#include "ImageOperatorBase.h"
|
||||
|
||||
void CreatePixelXYZ(std::shared_ptr<EchoL0Dataset> echoL0ds, QString outPixelXYZPath)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue