成像时,校正回波随距离衰减的
parent
d125abf0d4
commit
99a2d7af0f
|
|
@ -14,6 +14,4 @@ bool GPSPointsNumberEqualCheck(QString& ImageLLPath, QString& InEchoGPSDataPath)
|
||||||
|
|
||||||
void InterploateAtiByRefDEM(QString& ImageLLPath, QString& ImageDEMPath, QString& outImageLLAPath, QString& InEchoGPSDataPath);
|
void InterploateAtiByRefDEM(QString& ImageLLPath, QString& ImageDEMPath, QString& outImageLLAPath, QString& InEchoGPSDataPath);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
|
|
@ -349,8 +349,6 @@ void QCreateInSARImagePlaneXYZRDialog::LookTableSimulationDopplerProcess(QString
|
||||||
Xp4, Yp4, Zp4, Xv4, Yv4, Zv4,
|
Xp4, Yp4, Zp4, Xv4, Yv4, Zv4,
|
||||||
Xp5, Yp5, Zp5, Xv5, Yv5, Zv5,
|
Xp5, Yp5, Zp5, Xv5, Yv5, Zv5,
|
||||||
dopplerRefrenceTime, r0, r1, r2, r3, r4);
|
dopplerRefrenceTime, r0, r1, r2, r3, r4);
|
||||||
|
|
||||||
|
|
||||||
// GPU -> ÄÚ´æ
|
// GPU -> ÄÚ´æ
|
||||||
DeviceToHost(host_R.get(), device_R.get(), sizeof(double) * rowcount * demimg.width);
|
DeviceToHost(host_R.get(), device_R.get(), sizeof(double) * rowcount * demimg.width);
|
||||||
qDebug() << "GPU computer finished!!: " << rid << "~" << rowcount + rid << "\t:" << demimg.height;
|
qDebug() << "GPU computer finished!!: " << rid << "~" << rowcount + rid << "\t:" << demimg.height;
|
||||||
|
|
@ -383,3 +381,6 @@ void QCreateInSARImagePlaneXYZRDialog::onaccepted()
|
||||||
QMessageBox::information(this, u8"info", u8"completed!!!");
|
QMessageBox::information(this, u8"info", u8"completed!!!");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -82,6 +82,7 @@ __global__ void processPulseKernel(
|
||||||
|
|
||||||
//printf("processPulseKernel xmat !!\n");
|
//printf("processPulseKernel xmat !!\n");
|
||||||
double R = sqrt(dx * dx + dy * dy + dz * dz);
|
double R = sqrt(dx * dx + dy * dy + dz * dz);
|
||||||
|
double ampcorrect = (powf(4 * LAMP_CUDA_PI, 2) * powf(R, 4));
|
||||||
double dR = R - R0;
|
double dR = R - R0;
|
||||||
|
|
||||||
if (dR < r_start || dR >= (r_start + dr * (nR - 1))) return;
|
if (dR < r_start || dR >= (r_start + dr * (nR - 1))) return;
|
||||||
|
|
@ -107,6 +108,10 @@ __global__ void processPulseKernel(
|
||||||
phCorr.x = rc_interp.x * cos_phase - rc_interp.y * sin_phase;
|
phCorr.x = rc_interp.x * cos_phase - rc_interp.y * sin_phase;
|
||||||
phCorr.y = rc_interp.x * sin_phase + rc_interp.y * cos_phase;
|
phCorr.y = rc_interp.x * sin_phase + rc_interp.y * cos_phase;
|
||||||
|
|
||||||
|
// amp correction
|
||||||
|
phCorr.x = ampcorrect * phCorr.x;
|
||||||
|
phCorr.y = ampcorrect * phCorr.y;
|
||||||
|
|
||||||
// Accumulate
|
// Accumulate
|
||||||
im_final[idx].x += phCorr.x;
|
im_final[idx].x += phCorr.x;
|
||||||
im_final[idx].y += phCorr.y;
|
im_final[idx].y += phCorr.y;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue