Coastal-Imaging-Research-Network / CIRN-Quantitative-Coastal-Imaging-Toolbox

The CIRN Introduction to Quantitative Coastal Imaging Toolbox is a collection of MATLAB scripts to produce geo-rectified images specifically tailored for quantitative analysis of coastal environments.
GNU General Public License v3.0
19 stars 7 forks source link

Variable extrinsic solution via stabilization points calling wrong UVds? #35

Closed conlin-matt closed 1 year ago

conlin-matt commented 2 years ago

Hi Brittany,

I've been going through this (wonderful) toolbox and stumbled on what I think to be an error in the variableExtriniscSolution code. The line in question is given below: https://github.com/Coastal-Imaging-Research-Network/CIRN-Quantitative-Coastal-Imaging-Toolbox/blob/ef09056349bbae56a3d872e7b26e563a1f6ae829/F_variableExtrinsicSolutions.m#L289

Let's take a simple 2 frame case where we want to find an extrinsic solution for a new frame by using a known (GCP-based) extrinsic solution from the previous (old) frame. According to the line above, the extrinsic solution for the new frame is found using the extrinsic solution from the old frame as an initial guess (👍), known flags (👍), lens calibration info (👍), the UVds of the stabilization points in the previous image (?), and the computed XYZs of the stabilization points (👍).

Shouldn't the extrinsic solution for the new frame be computed using the UVds of the stabilization points in the new frame, rather than in the old frame (i.e. using UVdn rather than UVdo)? As written, doesn't the line effectively compute a new solution for the old frame using the SCPs rather than GCPs? Many apologies if I am missing something fundamental here. Any guidance appreciated!

-Matt C

burritobrittany commented 1 year ago

Matt, I am really sorry ...I am just seeing this. I think you are correct! THanks!!! I will implement soon before CIRNWeek 2023. Best Brittany

burritobrittany commented 1 year ago

In latest update!