An approaching object detection system comprising: a camera which is mounted on a vehicle to capture an image in the vicinity of the vehicle; a first moving region detection unit configured to perform, on a plurality of continuous images captured in time series by the camera, optical flow processing in which only a velocity vector in a certain direction in the images in time series is detected, to detect image portions of the images occupied by a moving object in the certain direction; a second moving region detection unit configured to process, based on dynamic programming, an image portion of each of the images detected by the first moving region detection unit to determine a change in size of the image portion of a subsequent image P(t+2) over a preceding image P(t+1) in time series, and obtain distributions of image signal values of the image portions detected by the first moving region detection unit in a direction different from the certain direction, correlate the distribution of the image signal values of the image portion Q(t+1) in the preceding image P(t+1) in time series with the distribution of the image signal values of the image portion Q(t+2) in the subsequent image P(t+2) in time series, and compute, by matching the correlated distributions, an enlargement rate of size of the image portion Q(t+2) in the subsequent image P(t +2) to the size of the image portion Q(t+1) in the preceding image P(t+1), based on the dynamic programming; and an approaching object determining unit configured to determine, according to the enlargement rate, that a moving object corresponding to the image portions is an object approaching the camera, when the enlargement rate is increasing, wherein the certain direction is a direction within a predetermined range including a horizontal direction; and the direction different from the certain direction is a vertical direction. a camera which is mounted on a vehicle to capture an image in the vicinity of the vehicle; a first moving region detection unit configured to perform, on a plurality of continuous images captured in time series by the camera, optical flow processing in which only a velocity vector in a certain direction in the images in time series is detected, to detect image portions of the images occupied by a moving object in the certain direction; a second moving region detection unit configured to process, based on dynamic programming, an image portion of each of the images detected by the first moving region detection unit to determine a change in size of the image portion of a subsequent image P(t+2) over a preceding image P(t+1) in time series, and obtain distributions of image signal values of the image portions detected by the first moving region detection unit in a direction different from the certain direction, correlate the distribution of the image signal values of the image portion Q(t+1) in the preceding image P(t+1) in time series with the distribution of the image signal values of the image portion Q(t+2) in the subsequent image P(t+2) in time series, and compute, by matching the correlated distributions, an enlargement rate of size of the image portion Q(t+2) in the subsequent image P(t +2) to the size of the image portion Q(t+1) in the preceding image P(t+1), based on the dynamic programming; and an approaching object determining unit configured to determine, according to the enlargement rate, that a moving object corresponding to the image portions is an object approaching the camera, when the enlargement rate is increasing, wherein the certain direction is a direction within a predetermined range including a horizontal direction; and the direction different from the certain direction is a vertical direction.