Hostname: page-component-74656f9884-8rzl6 Total loading time: 0 Render date: 2026-11-05T22:37:20.295Z Has data issue: false hasContentIssue false

A virtual environment for evaluation of computer vision algorithms under general airborne camera imperfections

Published online by Cambridge University Press:  23 March 2021

Arshiya Mahmoudi
Affiliation:
Department of Aerospace Engineering, Amirkabir University of Technology (Tehran Polytechnic), Tehran, Iran.
Mehdi Sabzehparvar*
Affiliation:
Department of Aerospace Engineering, Amirkabir University of Technology (Tehran Polytechnic), Tehran, Iran.
Mahdi Mortazavi
Affiliation:
Department of Mechanical Engineering, Faculty of Engineering, University of Isfahan, Isfahan, Iran
*
*Corresponding author. E-mail: sabzeh@aut.ac.ir
Rights & Permissions [Opens in a new window]

Abstract

This paper describes a camera simulation framework for validating machine vision algorithms under general airborne camera imperfections. Lens distortion, image delay, rolling shutter, motion blur, interlacing, vignetting, image noise, and light level are modelled. This is the first simulation that considers all temporal distortions jointly, along with static lens distortions in an online manner. Several innovations are proposed including a motion tracking system allowing the camera to follow the flight log with eligible derivatives. A reverse pipeline, relating each pixel in the output image to pixels in the ideal input image, is developed. It is shown that the inverse lens distortion model and the inverse temporal distortion models are decoupled in this way. A short-time pixel displacement model is proposed to solve for temporal distortions (i.e. delay, rolling shutter, motion blur, and interlacing). Evaluation is done by several means including regenerating an airborne dataset, regenerating the camera path on a calibration pattern, and evaluating the ability of the time displacement model to predict other frames. Qualitative evaluations are also made.

Information

Type
Research Article
Copyright
Copyright © The Royal Institute of Navigation 2021
Figure 0

Figure 1. Direct approach, adding geometrical distortions to an ideal frame

Figure 1

Figure 2. The inverse approach, removing distortions from a distorted frame (inverse pipeline)

Figure 2

Figure 3. The plant-control system used for path tracking

Figure 3

Figure 4. The complete SQRT controller structure

Figure 4

Figure 5. Ideal and bigger rendered map of FSR 2015-ASL dataset, the first image in the lawnmower sequence: (a) colour rendering (b) 24 bit depth rendering. Notice that horizontal lines in depth map are blue channel (3rd byte) discontinuities

Figure 5

Figure 6. Timeshift caused by rolling shutter

Figure 6

Figure 7. Interlacing combines two consequent half-row frames like a zipper, to form a full-frame one

Figure 7

Figure 8. Vignetting map of a badly installed fisheye lens on Galaxy S3 main camera

Figure 8

Figure 9. Pixel-wise photometric model, including vignetting, colour noise, light level and saturation

Figure 9

Table 1. Flight log tracking RMS error

Figure 10

Figure 10. Simulation of FSR 2015-ASL dataset, the first image in the lawnmower sequence: (a) final simulator output, (b) 24 bit depth, (c) undistorted captured image

Figure 11

Figure 11. (a) One of the 60 pictures taken from OpenCV's asymmetric circular calibration pattern, (b) simulation output

Figure 12

Figure 12. Simulation output using (a) OpenCV, (b) Agisoft Lens calibration parameters

Figure 13

Table 2. Intrinsic ideal camera and lens distortion calibration parameters

Figure 14

Figure 13. Delay effect under camera rotation: (a) original positioning, (b) pattern after 1 s of rotation (36 degrees), (c) 1 s rotation + 1 s delay using single-step linear solution, (d) using single-step backward RK2 solution

Figure 15

Figure 14. Pixel error RMS versus step size for different solver types, total pattern rotation is 36 degrees between frames, validated step sizes are 36, 18, 12, 9, 6, 4, 3, 2, 1 and 0⋅5 degrees

Figure 16

Figure 15. Delay effect under camera motion: (a) no delay (b) 1 s move + 1 s delay

Figure 17

Figure 16. Motion blur under camera rotation (a)–(c) static camera in three consequent positions (36 degree spacing), (d) simulation output using three sample points, (e) 10 sample points, (f) 100 sample points

Figure 18

Figure 17. Motion blur under camera motion: (a)–(c) static camera in three positions, (d) overlay of static images, (e) simulation output using three sample points, (f) simulation output using 100 sample points

Figure 19

Figure 18. Rolling shutter under camera rotation: (a) static camera, (b) camera rotating CW

Figure 20

Figure 19. Rolling shutter under camera motion: (a) static camera, (b) camera moving to the right (shear), (c) camera moving upwards (shortening), (d) camera moving downwards (elongation)

Figure 21

Figure 20. Interlacing under camera rotation: (a) and (b) static camera in two positions, (c) simulated interlaced image at the second position

Figure 22

Figure 21. 640 × 480 fisheye camera frame added to FSR 2015-ASL dataset, using exaggerated temporal distortions: (a) no temporal distortions, (b) 1 s later +1 s delay (visually indistinguishable from (a)), (c) 1 s rolling shutter (tr) (d) 1 s exposure time (te), (e) 1 s spacing for interlacing (ti)