Fast Automatic Differentiation for Large Scale Bundle Adjustment
A parallelized implementation of automatic differentiation that derives from the problem of bundle adjustment is proposed in this paper. Reverse mode of automatic differentiation is more efficient to compute the derivatives of functions with n real-value parameters, which is the case of computing th...
Main Authors: | , |
---|---|
Format: | Article |
Language: | English |
Published: |
IEEE
2018-01-01
|
Series: | IEEE Access |
Subjects: | |
Online Access: | https://ieeexplore.ieee.org/document/8307241/ |
id |
doaj-cdbee669c85245ffa3348f5ff9144a7f |
---|---|
record_format |
Article |
spelling |
doaj-cdbee669c85245ffa3348f5ff9144a7f2021-03-29T20:47:43ZengIEEEIEEE Access2169-35362018-01-016111461115310.1109/ACCESS.2018.28121738307241Fast Automatic Differentiation for Large Scale Bundle AdjustmentYan Shen0https://orcid.org/0000-0001-7431-8570Yuxing Dai1College of Electrical and Information Engineering, Hunan University, Changsha, ChinaCollege of Electrical and Information Engineering, Hunan University, Changsha, ChinaA parallelized implementation of automatic differentiation that derives from the problem of bundle adjustment is proposed in this paper. Reverse mode of automatic differentiation is more efficient to compute the derivatives of functions with n real-value parameters, which is the case of computing the Jacobian matrix in bundle adjustment problem. By reason of a large number of small derivative computing tasks being needed in bundle adjustment problem, we implement an automatic differentiation library based on operator overloading and OpenCL parallel framework. In order to parallelize the computation in the framework of OpenCL, we generate forward and reverse computational sequences from computational graph by topological sorting. This library enables us to write down the function formula elegantly and then evaluate the derivatives rapidly and automatically. Finally, large scale bundle adjustment data sets is used to evaluate our proposed implementation. The result shows that our implementation runs about 3.6 times faster than Ceres Solver, which utilizes OpenMP parallel programming model.https://ieeexplore.ieee.org/document/8307241/Automatic differentiationbundle adjustmentstereo visionparallel computing |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Yan Shen Yuxing Dai |
spellingShingle |
Yan Shen Yuxing Dai Fast Automatic Differentiation for Large Scale Bundle Adjustment IEEE Access Automatic differentiation bundle adjustment stereo vision parallel computing |
author_facet |
Yan Shen Yuxing Dai |
author_sort |
Yan Shen |
title |
Fast Automatic Differentiation for Large Scale Bundle Adjustment |
title_short |
Fast Automatic Differentiation for Large Scale Bundle Adjustment |
title_full |
Fast Automatic Differentiation for Large Scale Bundle Adjustment |
title_fullStr |
Fast Automatic Differentiation for Large Scale Bundle Adjustment |
title_full_unstemmed |
Fast Automatic Differentiation for Large Scale Bundle Adjustment |
title_sort |
fast automatic differentiation for large scale bundle adjustment |
publisher |
IEEE |
series |
IEEE Access |
issn |
2169-3536 |
publishDate |
2018-01-01 |
description |
A parallelized implementation of automatic differentiation that derives from the problem of bundle adjustment is proposed in this paper. Reverse mode of automatic differentiation is more efficient to compute the derivatives of functions with n real-value parameters, which is the case of computing the Jacobian matrix in bundle adjustment problem. By reason of a large number of small derivative computing tasks being needed in bundle adjustment problem, we implement an automatic differentiation library based on operator overloading and OpenCL parallel framework. In order to parallelize the computation in the framework of OpenCL, we generate forward and reverse computational sequences from computational graph by topological sorting. This library enables us to write down the function formula elegantly and then evaluate the derivatives rapidly and automatically. Finally, large scale bundle adjustment data sets is used to evaluate our proposed implementation. The result shows that our implementation runs about 3.6 times faster than Ceres Solver, which utilizes OpenMP parallel programming model. |
topic |
Automatic differentiation bundle adjustment stereo vision parallel computing |
url |
https://ieeexplore.ieee.org/document/8307241/ |
work_keys_str_mv |
AT yanshen fastautomaticdifferentiationforlargescalebundleadjustment AT yuxingdai fastautomaticdifferentiationforlargescalebundleadjustment |
_version_ |
1724194190788657152 |