Skip to main content
Log in

Refractive Pose Refinement

Generalising the Geometric Relation between Camera and Refractive Interface

  • Published:
International Journal of Computer Vision Aims and scope Submit manuscript

Abstract

In this paper, we investigate absolute and relative pose estimation under refraction, which are essential problems for refractive structure from motion. To cope with refraction effects, we first formulate geometric constraints for establishing iterative algorithms to optimize absolute and relative pose. By classifying two scenarios according to the geometric relationship between the camera and refractive interface, we derive the corresponding solutions to solve the optimization problems efficiently. In the scenario where the geometry between the camera and refractive interface is fixed (e.g., underwater imaging), we also show that the refractive epipolar constraint for relative pose can be established as a summation of the classical essential matrix and two correction terms caused by refraction by using the virtual camera transformation. Thanks to its succinct form, the resulting refractive epipolar constraint can be efficiently optimized. We evaluate our proposed algorithms on synthetic data showing superior accuracy and computational efficiency compared to state-of-the-art (SOTA) methods. We further demonstrate the application of the proposed algorithms in refractive structure from motion on real data. Our datasets (Hu et al., RefractiveSfM, https://github.com/diku-dk/RefractiveSfM, 2022) and code (Hu et al., DIKU Refractive Scenes Dataset 2022, Data, 2022) are publicly available.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24
Fig. 25
Fig. 26
Fig. 27
Fig. 28
Fig. 29
Fig. 30
Fig. 31
Fig. 32

Similar content being viewed by others

Notes

  1. We extend their open-source implementation to handle the case 3 mentioned in their work.

  2. We shuffled input points randomly. Therefore, better results might be obtained using other points for pose estimation.

References

  • Absil, P. A., Mahony, R., & Sepulchre, R. (2009). Optimization algorithms on matrix manifolds. Princeton University Press.

  • Agrawal, A., Ramalingam, S., Taguchi, Y., & Chari, V. (2012). A theory of multi-layer flat refractive geometry. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 3346–3353). IEEE.

  • AliceVision. (2022). Photogrammetric computer vision framework. https://alicevision.org/

  • Arun, K. S., Huang, T. S., & Blostein, S. D. (1987). Least-squares fitting of two 3-d point sets. IEEE Transactions on Pattern Analysis and Machine Intelligence PAMI, 9(5), 698–700. https://doi.org/10.1109/TPAMI.1987.4767965

    Article  Google Scholar 

  • Cassidy, M., Mélou, J., Quéau, Y., Lauze, F., & Durou, J. D. (2020). Refractive multi-view stereo. In International conference on 3D vision (3DV 2020).

  • Chadebecq, F., Vasconcelos, F., Dwyer, G., Lacher, R., Ourselin, S., Vercauteren, T., & Stoyanov, D. (2017). Refractive structure-from-motion through a flat refractive interface. In Proceedings of the IEEE international conference on computer vision (pp. 5315–5323).

  • Chadebecq, F., Vasconcelos, F., Lacher, R., Maneas, E., Desjardins, A., Ourselin, S., Vercauteren, T., & Stoyanov, D. (2019). Refractive two-view reconstruction for underwater 3d vision. International Journal of Computer Vision. https://doi.org/10.1007/s11263-019-01218-9

  • Chang, Y. J., & Chen, T. (2011). Multi-view 3d reconstruction for scenes under the refractive plane with known vertical direction. In 2011 international conference on computer vision (pp. 351–358). IEEE.

  • Chari, V., & Sturm, P. (2009). Multiple-view geometry of the refractive plane. In BMVC 2009-20th British machine vision conference (pp. 1–11). The British Machine Vision Association (BMVA).

  • Ferraz, L., Binefa, X., & Moreno-Noguer, F. (2014). Very fast solution to the pnp problem with algebraic outlier rejection. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 501–508).

  • Fischler, M. A., & Bolles, R. C. (1981). Random sample consensus: A paradigm for model fitting with applications to image analysis and automated cartography. Communications of the ACM, 24(6), 381–395.

    Article  MathSciNet  Google Scholar 

  • Fragoso, V., DeGol, J., & Hua, G. (2020). gdls*: Generalized pose-and-scale estimation given scale and gravity priors. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition (pp. 2210–2219).

  • Gao, X. S., Hou, X. R., Tang, J., & Cheng, H. F. (2003). Complete solution classification for the perspective-three-point problem. IEEE Transactions on Pattern Analysis and Machine Intelligence, 25(8), 930–943.

    Article  Google Scholar 

  • Garrido-Jurado, S., Munoz-Salinas, R., Madrid-Cuevas, F. J., & Medina-Carnicer, R. (2016). Generation of fiducial marker dictionaries using mixed integer linear programming. Pattern Recognition, 51, 481–491.

    Article  Google Scholar 

  • gP+s. (2014). https://github.com/jonathanventura/genposeandscale

  • Grossberg, M. D., & Nayar, S. K. (2001). A general imaging model and a method for finding its parameters. In Proceedings of the IEEE international conference on computer vision, ICCV 2001 (Vol. 2, pp. 108–115). IEEE.

  • Hadfield, S., Lebeda, K., & Bowden, R. (2018). Hard-pnp: Pnp optimization using a hybrid approximate representation. IEEE Transactions on Pattern Analysis and Machine Intelligence, 41(3), 768–774.

    Article  Google Scholar 

  • Haner, S., & Åström, K. (2015). Absolute pose for cameras under flat refractive interfaces. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 1428–1436).

  • Hartley, R. I., & Zisserman, A. (2004). Multiple view geometry in computer vision (2nd edn.). Cambridge University Press. ISBN: 0521540518.

  • Hedrick, B. P., Heberling, J. M., Meineke, E. K., Turner, K. G., Gassa, C. J., Park, D. S., Kennedy, J., Clarke, J. A., Cook, J. A., Blackburn, D. C., Edwards, S. V., & Davis, C. C. (2020). Digitization and the future of natural history collections. BioScience, 70(3), 243–251.

    Article  Google Scholar 

  • Hesch, J. A., & Roumeliotis, S. I. (2011). A direct least-squares (DLS) method for pnp. In Proceedings of the IEEE international conference on computer vision (pp. 383–390). IEEE.

  • Hu, X., Lauze, F., & Pedersen, K. S. (2022a). RefractiveSfM. https://github.com/diku-dk/RefractiveSfM

  • Hu, X., Lauze, F., Pedersen, K. S., & Quéau, Y. (2022b). DIKU refractive scenes dataset 2022. Data. https://doi.org/10.17894/ucph.5d1b9bea-b105-4d43-aefb-c53df7806c2a

  • Hu, X., Lauze, F., Pedersen, K. S., Mélou, J. (2021). Absolute and relative pose estimation in refractive multi view. In Proceedings of the IEEE/CVF international conference on computer vision (pp. 2569–2578).

  • Ichimaru, K., Taguchi, Y., & Kawasaki, H. (2019). Unified underwater structure-from-motion. In Proceedings—2019 international conference on 3D vision, 3DV 2019 (pp. 524–532).

  • Jordt, A. (2013). Underwater 3d reconstruction based on physical models for refraction and underwater light propagation (Ph.D thesis). https://macau.uni-kiel.de/receive/diss_mods_00014162

  • Jordt, A., & Koch, R. (2012). Refractive calibration of underwater cameras. In Proceedings of the European conference on computer vision (pp. 846–859). Springer.

  • Jordt, A., & Koch, R. (2013). Refractive structure-from-motion on underwater images. In Proceedings of the IEEE international conference on computer vision (pp. 57–64).

  • Jordt, A., Köser, K., & Koch, R. (2016). Refractive 3d reconstruction on underwater images. Methods in Oceanography, 15, 90–113.

    Article  Google Scholar 

  • Kang, L., Wu, L., Yang, Y. H. (2012b). Two-view underwater structure and motion for cameras under flat refractive interfaces. In Proceedings of the European conference on computer vision (pp. 303–316). Springer.

  • Kang, L., Wu, L., & Yang, Y. H. (2012). Experimental study of the influence of refraction on underwater three-dimensional reconstruction using the svp camera model. Applied Optics, 51(31), 7591–7603.

    Article  Google Scholar 

  • Kneip, L., & Furgale, P. (2014). Opengv: A unified and generalized approach to real-time calibrated geometric vision. In 2014 IEEE international conference on robotics and automation (ICRA) (pp. 1–8). IEEE.

  • Kneip, L., & Li, H. (2014). Efficient computation of relative pose for multi-camera systems. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 446–453).

  • Kneip, L., Furgale, P., & Siegwart, R. (2013). Using multi-camera systems in robotics: Efficient solutions to the npnp problem. In Proceedings of the IEEE international conference on robotics and automation (pp. 3770–3776). IEEE.

  • Kneip, L., Li, H., & Seo, Y. (2014). Upnp: An optimal o (n) solution to the absolute pose problem with universal applicability. In Proceedings of the European conference on computer vision (pp. 127–142). Springer.

  • Kneip, L., Scaramuzza, D., & Siegwart, R. (2011). A novel parametrization of the perspective-three-point problem for a direct computation of absolute camera position and orientation. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 2969–2976).

  • Kroeger, T., Timofte, R., Dai, D., & Van Gool, L. (2016). Fast optical flow using dense inverse search. In Proceedings of the European conference on computer vision (pp. 471–488). Springer.

  • Kukelova, Z., Bujnak, M., & Pajdla, T. (2008). Automatic generator of minimal problem solvers. In Proceedings of the European conference on computer vision (pp. 302–315). Springer.

  • Lavest, J. M., Rives, G., & Lapresté, J. T. (2000). Underwater camera calibration. In Proceedings of the European conference on computer vision (pp. 654–668). Springer.

  • Lee, G.H., Li, B., Pollefeys, M., & Fraundorfer, F. (2016). Minimal solutions for pose estimation of a multi-camera system. In 16th international symposium of robotics research, ISRR 2013 (pp. 521–538). Springer.

  • Lepetit, V., Moreno-Noguer, F., & Fua, P. (2009). Epnp: An accurate o (n) solution to the pnp problem. International Journal of Computer Vision, 81(2), 155.

    Article  Google Scholar 

  • Li, H., Hartley, R., & Kim, J. H. (2008). A linear approach to motion estimation using generalized camera models. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 1–8). IEEE.

  • Lowe, D. G. (2004). Distinctive image features from scale-invariant keypoints. International Journal of Computer Vision, 60(2), 91–110.

    Article  Google Scholar 

  • Łuczyński, T., Pfingsthorn, M., & Birk, A. (2017). The pinax-model for accurate and efficient refraction correction of underwater cameras in flat-pane housings. Ocean Engineering, 133, 9–22.

    Article  Google Scholar 

  • Ma, Y., Soatto, S., Košecká, J., & Sastry, S. (2004). An invitation to 3-D vision. From Images to Geometric Models. Interdisciplinary Applied Mathematics. Springer.

  • Miraldo, P., Dias, T., & Ramalingam, S. (2018). A minimal closed-form solution for multi-perspective pose estimation using points and lines. In Proceedings of the European conference on computer vision (pp. 474–490).

  • MMPPE. (2018). https://github.com/pmiraldo/MinimalMultiPerspectivePose

  • Moulon, P., Monasse, P., Marlet, R. (2012). Adaptive structure from motion with a contrario model estimation. In Proceedings of the Asian computer vision conference (pp. 257–270). Springer. https://doi.org/10.1007/978-3-642-37447-0_20

  • Mouragnon, E., Lhuillier, M., Dhome, M., Dekeyser, F., & Sayd, P. (2009). Generic and real-time structure from motion using local bundle adjustment. Image and Vision Computing, 27(8), 1178–1193.

    Article  Google Scholar 

  • NHMD. (2022a). Amber collection, Natural History Museum of Denmark (NHMD). https://samlinger.snm.ku.dk/en/dry-and-wet-collections/zoology/entomology/amber-collection/

  • NHMD. (2022b). Herpetology collection, Natural History Museum of Denmark (NHMD). https://samlinger.snm.ku.dk/en/dry-and-wet-collections/zoology/herpetology-collection/

  • Nistér, D. (2004). An efficient solution to the five-point relative pose problem. IEEE Transactions on Pattern Analysis and Machine Intelligence, 26(6), 756–770.

    Article  Google Scholar 

  • Nistér, D., & Stewénius, H. (2007). A minimal solution to the generalised 3-point pose problem. Journal of Mathematical Imaging and Vision, 27(1), 67–79.

    Article  MathSciNet  MATH  Google Scholar 

  • Oleari, F., Kallasi, F., Rizzini, D. L., Aleotti, J., & Caselli, S. (2015). An underwater stereo vision system: From design to deployment and dataset acquisition. In OCEANS 2015-Genova (pp. 1–6). IEEE.

  • OpenCV. (2022). Open source computer vision library. https://opencv.org/

  • Pedersen, M., Bengtson, S. H., Gade, R., Madsen, N., & Moeslund, T. B. (2018). Camera calibration for underwater 3d reconstruction based on ray tracing using Snell’s law. In 2018 IEEE/CVF conference on computer vision and pattern recognition workshops (CVPRW) (pp. 1491–14917). https://doi.org/10.1109/CVPRW.2018.00190

  • Pless, R. (2003). Using many cameras as one. In Proceedings of the IEEE computer society conference on computer vision and pattern recognition (Vol. 2, pp. II–587). IEEE.

  • Rizzini, D. L., Kallasi, F., Oleari, F., & Caselli, S. (2015). Investigation of vision-based underwater object detection with multiple datasets. International Journal of Advanced Robotic Systems, 12(6), 77.

    Article  Google Scholar 

  • Sadowski, E. M., Schmidt, A. R., Seyfullah, L. J., Solórzano-Kraemer, M. M., Neumann, C., Perrichot, V., Hamann, C., Milke, R., & Nascimbene, P. C. (2021). Conservation, preparation and imaging of diverse ambers and their inclusions. Earth-Science Reviews, 220, 103653.

    Article  Google Scholar 

  • Schönberger, J. L., & Frahm, J. M. (2016). Structure-from-motion revisited. In Proceedings of the IEEE .

  • Schonberger, J. L., & Frahm, J. M. (2016). Structure-from-motion revisited. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 4104–4113).

  • Stewenius, H., Nistér, D., Oskarsson, M., & Åström, K. (2005). Solutions to minimal generalized relative pose problems. In OMNIVIS 2005.

  • Sturm, P. (2005). Multi-view geometry for general camera models. In 2005 IEEE computer society conference on computer vision and pattern recognition (CVPR’05) (Vol. 1, pp. 206–212). IEEE.

  • Sweeney, C., Fragoso, V., Höllerer, T., & Turk, M. (2014). gdls: A scalable solution to the generalized pose and scale problem. In Proceedings of the European conference on computer vision (pp. 16–31). Springer.

  • Telem, G., & Filin, S. (2010). Photogrammetric modeling of underwater environments. ISPRS Journal of Photogrammetry and Remote Sensing, 65(5), 433–444.

    Article  Google Scholar 

  • Treibitz, T., Schechner, Y., Kunz, C., & Singh, H. (2011). Flat refractive geometry. IEEE Transactions on Pattern Analysis and Machine Intelligence, 34(1), 51–65.

    Article  Google Scholar 

  • Ventura, J., Arth, C., & Lepetit, V. (2015). An efficient minimal solution for multi-camera motion. In Proceedings of the IEEE international conference on computer vision (pp. 747–755).

  • Ventura, J., Arth, C., Reitmayr, G., & Schmalstieg, D. (2014). A minimal solution to the generalized pose-and-scale problem. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 422–429).

  • Xiong, J., & Heidrich, W. (2021a). In-the-wild single camera 3d reconstruction through moving water surfaces. In Proceedings of the IEEE/CVF international conference on computer vision (pp. 12558–12567).

  • Xiong, J., & Heidrich, W. (2021b). In-the-wild single camera 3d reconstruction through moving water surfaces. In Proceedings of the IEEE/CVF international conference on computer vision (ICCV) (pp. 12558–12567).

  • Zhang, P., Wu, Z., Wang, J., Kong, S., Tan, M., & Yu, J. (2021). An open-source, fiducial-based, underwater stereo visual-inertial localization method with refraction correction. In 2021 IEEE/RSJ international conference on intelligent robots and systems (IROS) (pp. 4331–4336). https://doi.org/10.1109/IROS51168.2021.9636198

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xiao Hu.

Additional information

Communicated by Matteo Poggi.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

A Jacobian Matrices related to Pose Estimation under Refraction

This appendix section gives the Jacobian matrices derived for pose estimation under refraction.

1.1 A.1 Scenario 1

1.1.1 A.1.1 Relative Pose Refiment

The residual of the epipolar cost and its analytical Jacobian are given as follows:

$$\begin{aligned}{} & {} {\mathcal E}= {\textbf{u}^\prime }^\top \textbf{R}^\top (\textbf{e})^\wedge \textbf{u}\ , \nonumber \\{} & {} \textbf{J}{{\mathcal E}}_\textbf{x} =\left[ \textbf{J}{{\mathcal E}}_\textbf{R}\quad ,\textbf{J}{{\mathcal E}}_\textbf{c}\quad ,\textbf{0}\right] \ , \nonumber \\{} & {} \textbf{J}{{\mathcal E}}_\textbf{R}={\textbf{u}\prime }^\top \textbf{R}^\top \textbf{u}^\wedge \textbf{R}\textbf{c}_{\text {V}_2}^\wedge -{\textbf{u}^\prime }^\top \left( \textbf{R}^\top \textbf{u}^\wedge \textbf{e} \right) ^\wedge \ , \nonumber \\{} & {} \textbf{J}{{\mathcal E}}_\textbf{c} =-{\textbf{u}^\prime }^\top \textbf{R}^\top \textbf{u}^\wedge \ , \end{aligned}$$
(A.1)

where \(\textbf{e}=\textbf{R}\textbf{c}_{\text {V}_2}+\textbf{c}-\textbf{c}_{\text {V}_1}\), \(\textbf{x}=[\varvec{\xi }^\top , \textbf{v}^\top ,{\textbf{w}^i}^\top ]^\top ,\ i=1,\cdots ,N\).

Next, we derive the residual function of the reprojection cost and the corresponding Jacobian matrix as follows:

$$\begin{aligned}{} & {} {\mathcal R}=\left[ \begin{array}{l}f_{\textrm{V}} \frac{\textbf{p}_{\textrm{V,1}}}{\textbf{p}_{\textrm{V,3}}} -f_{\textrm{V}}\frac{\textbf{r}_{\textrm{V,1}}}{\textbf{r}_{\textrm{V,3}}}\\ f_{\textrm{V}} \frac{\textbf{p}_{\textrm{V,2}}}{\textbf{p}_{\textrm{V,3}}} -f_{\textrm{V}}\frac{\textbf{r}_{\textrm{V,2}}}{\textbf{r}_{\textrm{V,3}}} \end{array} \right] ,\nonumber \\{} & {} \textbf{J}{{\mathcal R}}_\textbf{x} = \textbf{J}_{\textbf{p}_{\textrm{V}}} \textbf{J}^{\textbf{p}_{\textrm{V}}}_{\textbf{x}}\ ,\nonumber \\{} & {} \textbf{J}_{\textbf{p}_{\textrm{V}}}=\left[ \begin{array}{ccc} \frac{f_{\textrm{V}}}{\textbf{p}_{\textrm{V,3}}} &{} 0 &{} -f_{\textrm{V}} \frac{\textbf{p}_{\textrm{V,1}}}{\textbf{p}_{\textrm{V,3}}^2}\\ 0 &{} \frac{f_{\textrm{V}}}{\textbf{p}_{\textrm{V,3}}} &{} -f_{\textrm{V}} \frac{\textbf{p}_{\textrm{V,2}}}{\textbf{p}_{\textrm{V,3}}^2} \end{array} \right] , \nonumber \\{} & {} \textbf{J}^{\textbf{p}_{\textrm{V}}}_{\textbf{x}}= \left[ \begin{array}{ccc} \textbf{R}_{\textrm{V}}^\top \left( \textbf{R}^\top (\textbf{p}-\textbf{c})\right) ^\wedge&-\textbf{R}_{\textrm{V}}^\top \textbf{R}^\top&\textbf{R}_{\textrm{V}}^\top \textbf{R}^\top \end{array} \right] \ , \end{aligned}$$
(A.2)

where \(\textbf{p}_{\textrm{V}}=\textbf{R}_{\textrm{V}}^\top \left( \textbf{R}^\top (\textbf{p}-\textbf{c})-\textbf{c}_{\textbf{V}_2}\right) \), \( \textbf{r}_{\textrm{V}}=\textbf{R}_{\textrm{V}}^\top \textbf{r}\), \(\textbf{r}\) denotes the refractive ray of feature \(\textbf{u}\), \(f_{\textrm{V}}\) denotes the focal length of the virtual camera, \(\textbf{R}_{\textrm{V}}\) and \(\textbf{c}_{\textrm{V}}\) are the rotation and location of the virtual camera coordinate frame with respect to the camera coordinate frame.

1.2 A.2 Scenario 2

1.2.1 A.2.1 Absolute Pose Refinement

By using the chain rule, we have the Jacobian matrix w.r.t \(\textbf{R}\) and \(\textbf{C}\) as

$$\begin{aligned} \textbf{J}{\mathcal L}_\textbf{R}= & {} \textbf{J}{\textbf{l}_{\text {W}_{1}}} \textbf{J}^{\textbf{l}_{\text {W}_{1}}}_\textbf{R} + \textbf{J}_{\textbf{l}_{\text {W}_{2}}} \textbf{J}^{\textbf{l}_{\text {W}_{2}}}_{\textbf{R}}\ ,\nonumber \\ \textbf{J}_\textbf{c}= & {} \textbf{J}_{\textbf{l}_{\text {W}_{1}}} \textbf{J}^{\textbf{l}_{\text {W}_{1}}}_\textbf{c} + \textbf{J}_{\textbf{l}_{\text {W}_{2}}} \textbf{J}^{\textbf{l}_{\text {W}_{2}}}_{\textbf{c}}\ . \end{aligned}$$
(A.3)

where \(\textbf{J}_{\textbf{l}_{\text {W}_{1}}}=-\textbf{p}_\text {W}^\wedge \) and \( \textbf{J}_{\textbf{l}_{\text {W}_{2}}}=\textbf{I}\). Since \(\textbf{R}\) and \(\textbf{c}\) are embedded in \(\textbf{l}_\text {W}\), again, by the chain rule, we have:

$$\begin{aligned} \textbf{J}^{\mathbf {l_{W_{1}}}}_\textbf{R}= & {} \textbf{J}^{\mathbf {l_{W_{1}}}}_{\textbf{q}_\text {W}}\textbf{J}^{\textbf{q}_\text {W}}_{\textbf{i}_{\text {W}}}\textbf{J}^{\textbf{i}_{\text {W}}}_{\textbf{R}}+ \textbf{J}^{\mathbf {l_{W_{1}}}}_{\textbf{r}_\text {W}}\textbf{J}^{\textbf{r}_\text {W}}_{\textbf{i}_{\text {W}}}\textbf{J}^{\textbf{i}_{\text {W}}}_{\textbf{R}}, \nonumber \\ \textbf{J}^{\mathbf {l_{W_{1}}}}_\textbf{c}= & {} \textbf{J}^{\mathbf {l_{W_{1}}}}_{\textbf{q}_\text {W}}\textbf{J}^{\textbf{q}_\text {W}}_{^\text {W}\textbf{c}_\text {C}} \nonumber \\ \textbf{J}^{\mathbf {l_{W_{2}}}}_{\textbf{R}}= & {} \textbf{J}^{\mathbf {l_{W_{2}}}}_{\textbf{q}_\text {W}}\textbf{J}^{\textbf{q}_\text {W}}_{\textbf{i}_\text {W}}\textbf{J}^{\textbf{i}_\text {W}}_{\textbf{R}}+\textbf{J}^{\mathbf {l_{W_{2}}}}_{\textbf{r}_\text {W}}\textbf{J}^{\textbf{r}_\text {W}}_{\textbf{i}_\text {W}}\textbf{J}^{\textbf{i}_\text {W}}_{\textbf{R}}, \nonumber \\ \textbf{J}^{\mathbf {l_{W_{2}}}}_{\textbf{c}}= & {} \textbf{J}^{\mathbf {l_{W_{2}}}}_{\textbf{q}_\text {W}}\textbf{J}^{\textbf{q}_\text {W}}_{^\text {W}\textbf{c}_\text {C}}, \end{aligned}$$
(A.4)

where

(A.5)

1.2.2 A.2.2 Relative Pose Refinement

Recall the refractive epipolar constraint given as

$$\begin{aligned} {\mathcal E}= {\textbf{r}^2_\text {W}}^\top {(^\text {W}\textbf{c}^2_{\text {V}}- ^\text {W}\textbf{c}^1_{\text {V}})}^\wedge {\textbf{r}^1_\text {W}}\ , \end{aligned}$$
(A.6)

using the chain rule, we have the Jacobian matrices w.r.t the variation of \(\textbf{R}\), \(\textbf{c}\), and \(\textbf{p}\) as

$$\begin{aligned} \textbf{J}{\mathcal E}_{\textbf{x}}= & {} [\textbf{J}{\mathcal E}_\textbf{R}, \textbf{J}{\mathcal E}_\textbf{c}, \textbf{0}]\ , \nonumber \\ \textbf{J}{\mathcal E}_\textbf{R}= & {} \textbf{J}{\mathcal E}_{\textbf{r}^2_\text {W}} \textbf{J}^{\textbf{r}^2_\text {W}}_\textbf{R} + \textbf{J}{\mathcal E}_{^\text {W}\textbf{c}^2_{\text {V}}} \textbf{J}^{^\text {W}\textbf{c}^2_{\text {V}}}_\textbf{R}\ , \nonumber \\ \textbf{J}{\mathcal E}_\textbf{c}= & {} \textbf{J}{\mathcal E}_{^\text {W}\textbf{c}^2_{\text {V}}} \textbf{J}^{^\text {w}\textbf{c}^2_{\text {V}}}_\textbf{c}\ . \end{aligned}$$
(A.7)

where

$$\begin{aligned} \textbf{J}{\mathcal E}_{\textbf{r}^2_\text {W}}= & {} \left( (^\text {W}\textbf{c}^2_{\text {V}}- ^\text {W}\textbf{c}^1_{\text {V}})^\wedge \textbf{r}^1_\text {W}\right) ^\top ,\nonumber \\ \textbf{J}{\mathcal E}_{^\text {W}\textbf{c}^2_{\text {V}}}= & {} -{\textbf{r}^2_\text {W}}^\top (\textbf{r}^1_\text {W})^\wedge \ , \nonumber \\ \textbf{J}^{\textbf{r}^2_\text {W}}_\textbf{R}= & {} \textbf{J}^{\textbf{r}^2_\text {W}}_{\textbf{i}_{\text {W}}} \textbf{J}^{\textbf{i}_{\text {W}}}_{\textbf{R}}\ ,\nonumber \\ \textbf{J}^{^\text {W}\textbf{c}^2_{\text {V}}}_\textbf{R}= & {} \textbf{J}^{^\text {W}\textbf{c}^2_\text {V}}_{\textbf{i}_\text {W}} \textbf{J}^{\textbf{i}_{\text {W}}}_{\textbf{R}}\ , \nonumber \\ \textbf{J}^{^\text {W}\textbf{c}^2_{\text {V}}}_\textbf{c}= & {} \textbf{J}^{^\text {W}\textbf{c}^2_\text {V}}_{^\text {W}\textbf{c}_\text {C}}\ . \end{aligned}$$
(A.8)

Similarly, for the reprojection error given as

$$\begin{aligned} {\mathcal R}=\left[ \begin{array}{l}f_{\textrm{V}} \frac{\textbf{p}_{\textrm{V,1}}}{\textbf{p}_{\textrm{V,3}}} -f_{\textrm{V}}\frac{\textbf{r}_{\textrm{V,1}}}{\textbf{r}_{\textrm{V,3}}}\\ f_{\textrm{V}}\frac{\textbf{p}_{\textrm{V,2}}}{\textbf{p}_{\textrm{V,3}}} -f_{\textrm{V}}\frac{\textbf{r}_{\textrm{V,2}}}{\textbf{r}_{\textrm{V,3}}} \end{array}\right] \ , \end{aligned}$$
(A.9)

using the chain rule, we have the Jacobian matrices w.r.t \(\textbf{R}\), \(\textbf{c}\), and \(\textbf{p}\) as

$$\begin{aligned} \textbf{J}{\mathcal R}_{\textbf{x}}= & {} [\textbf{J}{\mathcal R}_\textbf{R}, \textbf{J}{\mathcal R}_\textbf{c}, \textbf{J}{\mathcal R}_\textbf{p}]\ , \nonumber \\ \textbf{J}{\mathcal R}_\textbf{R}= & {} \textbf{J}{\mathcal R}_{\textbf{p}_\text {V}}\textbf{J}^{\textbf{p}_\text {V}}_\textbf{R} + \textbf{J}{\mathcal R}_{\textbf{r}_\text {V}} \textbf{J}^{\textbf{r}_\text {V}}_\textbf{R}\ , \nonumber \\ \textbf{J}{\mathcal R}_\textbf{c}= & {} \textbf{J}{\mathcal R}_{\textbf{p}_\text {V}}\textbf{J}^{\textbf{p}_\text {V}}_\textbf{c} + \textbf{J}{\mathcal R}_{\textbf{r}_\text {V}} \textbf{J}^{\textbf{r}_\text {V}}_\textbf{c}\ , \nonumber \\ \textbf{J}{\mathcal R}_\textbf{p}= & {} \textbf{J}{\mathcal R}_{\textbf{p}_\text {V}}\textbf{J}^{\textbf{p}_\text {V}}_\textbf{p}\ , \end{aligned}$$
(A.10)

where

$$\begin{aligned} \textbf{J}{\mathcal R}_{\textbf{p}_\text {V}}= & {} \left[ \begin{array}{ccc} f_\text {V}\frac{1}{\textbf{p}_\text {V,3}} &{} 0 &{} -f_\text {V}\frac{\textbf{p}_\text {V,1}}{\textbf{p}_\text {V,3}^2} \\ 0 &{} f_\text {V}\frac{1}{\textbf{p}_\text {V,3}} &{} -f_\text {V}\frac{\textbf{p}_\text {V,2}}{\textbf{p}_\text {V,3}^2} \end{array} \right] \ ,\nonumber \\ \textbf{J}{\mathcal R}_{\textbf{r}_\text {V}}= & {} \left[ \begin{array}{ccc} -f_\text {V}\frac{1}{\textbf{r}_\text {V,3}} &{} 0 &{} f_\text {V}\frac{\textbf{r}_\text {V,1}}{\textbf{r}_\text {V,3}^2} \\ 0 &{} -f_\text {V}\frac{1}{\textbf{r}_\text {V}(3)} &{} f_\text {V}\frac{\textbf{r}_\text {V,2}}{\textbf{r}_\text {V,3}^2} \end{array} \right] \ ,\nonumber \\ \textbf{J}^{\textbf{p}_\text {V}}_\textbf{R}= & {} \textbf{J}^{\textbf{p}_\text {V}}_{^\text {W}\textbf{c}_\text {V}}\textbf{J}^{^\text {W}\textbf{c}^2_{\text {V}}}_\textbf{R}\ , \quad \textbf{J}^{\textbf{r}_\text {V}}_\textbf{R} = \textbf{J}^{\textbf{r}_\text {V}}_{\textbf{q}_\text {W}} \textbf{J}^{\textbf{q}_\text {W}}_{\textbf{i}_{\text {W}}} \textbf{J}^{\textbf{i}_{\text {W}}}_{\textbf{R}}\ ,\quad \textbf{J}^{\textbf{p}_\text {V}}_\textbf{p} = \textbf{I}\ ,\nonumber \\ \textbf{J}^{\textbf{p}_\text {V}}_\textbf{c}= & {} \textbf{J}^{\textbf{p}_\text {V}}_{^\text {W}\textbf{c}_\text {V}} \textbf{J}^{^\text {W}\textbf{c}^i\text {V}}_{^\text {W}\textbf{c}_\text {C}} \ , \quad \textbf{J}^{\textbf{r}_\text {V}}_\textbf{c} = \textbf{J}^{\textbf{r}_\text {V}}_{\textbf{q}_\text {W}} \textbf{J}^{\textbf{q}_\text {W}}_{^\text {W}\textbf{c}_{\text {C}}}\ . \end{aligned}$$
(A.11)

Some intermediate Jacobian matrices in (A.8) and (A.11) are given as follows:

$$\begin{aligned} \textbf{J}^{\textbf{r}^2_\text {W}}_\textbf{R}= & {} \textbf{J}^{\textbf{r}^2_\text {W}}_{\textbf{i}_{\text {W}}} \textbf{J}^{\textbf{i}_{\text {W}}}_{\textbf{R}}\ ,\nonumber \\ \textbf{J}^{^\text {W}\textbf{c}^2_{\text {V}}}_\textbf{R}= & {} \textbf{J}^{^\text {W}\textbf{c}^2_\text {V}}_{\textbf{i}_\text {W}} \textbf{J}^{\textbf{i}_{\text {W}}}_{\textbf{R}}\ , \nonumber \\ \textbf{J}^{^\text {W}\textbf{c}^2_{\text {V}}}_\textbf{c}= & {} \textbf{J}^{^\text {W}\textbf{c}^2_\text {V}}_{^\text {W}\textbf{c}_\text {C}} \ , \end{aligned}$$
(A.12)

where

$$\begin{aligned} \textbf{J}^{\textbf{q}_\text {W}}_{^\text {W}\textbf{c}_{\text {C}}}= & {} \left[ \begin{array}{ccc} 1 &{} 0 &{} - \frac{\textbf{i}_{\text {W,1}}}{\textbf{i}_{\text {W,3}}} \\ 0 &{} 1 &{} - \frac{\textbf{i}_{\text {W,2}}}{\textbf{i}_{\text {W,3}}} \\ 0 &{} 0 &{} 0\\ \end{array}\right] \ , \nonumber \\ \textbf{J}^{\textbf{q}_\text {W}}_{\textbf{i}_{\text {W}}}= & {} \left[ \begin{array}{ccc} -\frac{^\text {W}\textbf{c}_{\text {C,3}}}{\textbf{i}_{\text {W,3}}} &{} 0 &{} ^\text {W}\textbf{c}_{\text {C,3}}\frac{\textbf{i}_{\text {W,1}}}{\textbf{i}_{\text {W,3}}^2}\\ 0 &{} -\frac{^\text {W}\textbf{c}_{\text {C,3}}}{\textbf{i}_{\text {W,3}}} &{} ^\text {W}\textbf{c}_{\text {C,3}}\frac{\textbf{i}_{\text {W,2}}}{\textbf{i}_{\text {W,3}}^2}\\ 0 &{} 0 &{} 0\\ \end{array}\right] \ , \nonumber \\ \textbf{J}^{\textbf{r}^i_\text {W}}_{\textbf{i}_{\text {W}}}= & {} \left[ \begin{array}{ccc} \lambda &{} 0 &{} 0 \\ 0 &{} \lambda &{} 0 \\ 0 &{} 0 &{} \frac{\lambda ^2\textbf{i}_{\text {W,3}}}{\gamma }\\ \end{array}\right] \ , \nonumber \\ \textbf{J}^{^\text {W}\textbf{c}^i\text {V}}_{\textbf{i}_\text {W}}= & {} \left[ \begin{array}{ccc} 0 &{} 0 &{} 0 \\ 0 &{} 0 &{} 0 \\ 0 &{} 0 &{} \frac{-^\text {W}\textbf{c}_\text {C,3}(1-\lambda ^2)}{\lambda \textbf{i}_\text {W,3}^2\gamma } \\ \end{array}\right] \ , \nonumber \\ \textbf{J}^{^\text {W}\textbf{c}^i\text {V}}_{^\text {W}\textbf{c}_\text {C}}= & {} \left[ \begin{array}{ccc} 1 &{} 0 &{} 0 \\ 0 &{} 1 &{} 0 \\ 0 &{} 0 &{} \frac{1}{\lambda \textbf{i}_\text {W,3}}\gamma \\ \end{array}\right] \ , \nonumber \\ \textbf{J}^{\textbf{i}_{\text {W}}}_{\textbf{R}}= & {} \left( {\textbf{q}_\text {W}}\right) ^\wedge \ , \textbf{J}^{\textbf{p}_\text {V}}_{^\text {W}\textbf{c}_\text {V}} = -\textbf{I}\ ,\quad \textbf{J}^{\textbf{r}_\text {V}}_{\textbf{q}_\text {W}} = \textbf{I}\ . \end{aligned}$$
(A.13)

where \(\gamma =\sqrt{\left( 1-\lambda ^{2}\right) +\lambda ^{2} \textbf{i}_\text {W,3}^{2}}\).

B Additional Experiments

1.1 B.1 Setup of Synthetic Simulation

Figure 33 show how the data are generated to evaluate the absolute pose solvers in the non planar and planar cases. Figure 34 show how the data are generated to evaluate the relative pose solvers.

Fig. 33
figure 33

Simulation setup for absolute pose estimation: The left figure shows the setup for generating data (world points, image points, camera pose) under refraction for the non planar case. The right figure shows the setup for generating data for the planar case

Fig. 34
figure 34

Simulation setup for relative pose estimation: The figure shows the setup for generating data (world points, image points, camera pose) under refraction

1.2 B.2 Scenario 1: Absolute Pose Solver

As mentioned in Sect. 5.1.1, we found that

  • UPnP Kneip et al. (2014) unfortunately does not perform well even in non planar case without noise perturbation, which is shown in Fig. 35.

  • gPnP Kneip et al. (2013), gP+s Ventura et al. (2014), and MMPPE Miraldo et al. (2018) unfortunately does not perform well even in planar case without noise perturbation, which is shown in Fig. 36.

Fig. 35
figure 35

Comparison of absolute pose solvers in non planar case. Note that we set the standard deviation of the Gaussian noise to 0

Fig. 36
figure 36

Comparison of absolute pose solvers in planar case. Note that we set the standard deviation of the Gaussian noise to 0

1.3 B.3 Scenario 1: Relative Pose Solver

As mentioned in Sect. 5.1.2, we intended to add other GEC (Generalized Epipolar Constraint Pless (2003)) such as ge Kneip and Li (2014) and 6pt Stewenius et al. (2005). However, ge and 6pt do not show satisfactory performance in noise-free condition, as shown in Fig. 37.

Fig. 37
figure 37

Comparison of GEC solvers in noise-free case. Note that 17pt gives very accurate results so that its box is very tiny in the box plots

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Hu, X., Lauze, F. & Pedersen, K.S. Refractive Pose Refinement. Int J Comput Vis 131, 1448–1476 (2023). https://doi.org/10.1007/s11263-023-01763-4

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11263-023-01763-4

Keywords

Navigation