remove unnecessary TwoViewReport attributes
i2Ri1 and i2Ui1 shouldn't be in this report (I don't remember how they got in here, probably was from some old debugging i did while prototyping)...
I agree that these are unnecessary. However, they are still set here and possibly other places.
Also, now
two_view_report_ppis really just an exact copy oftwo_view_reportand should be removed.
Thanks for finding the other reference, I had missed that one. It's removed now.
@dellaert and I pair-programmed the new output of the Postprocessor (InlierSupportProcessor) last week and added this. The main idea behind it is: (1) We have to be able to know the statistics of the raw matches, vs. the postprocessed matches. (2) Two different variables that represent different quantities cannot be named the same thing. (3) We have to follow the graph -- each blue box creates its own table. In this case, the Verifier has its own table in the report, and the InlierSupportProcessor also has its own table in the report.
Ok, but two_view_report and two_view_report_pp are now just exact copies of each other (with two_view_report_pp being None if there are not enough inliers).
I'm not sure that just copying a variable and changing its name solves any of the action items you presented in an effective way.
I think we are lacking a good concept/meaning/purpose for the TwoViewEstimationReport. So far, it has included (almost?) everything from the two view estimator.
IF the intended purpose of the report is to store metrics, then all data members that have a bigger use case than a metric can be moved to a different data structure. By that I mean the verified correspondences, inlier ratio, rotation, translation etc. This PR removes the rotation and translation, which is good, but can we clean up the rest too?
Recap of decisions: each blue box creates both metrics (pink box?) and a result (gray box). These are 2 separate data structures. At some point, each blue box could inherit from a class, and have a method def __produce_metrics(self):
I agree that v_corr_idxs and reproj_error_gt_model should probably be removed.
I'm ambivalent about removing v_corr_idxs_inlier_mask_gt because it's used to visualize the metrics.