A bar code processing apparatus comprising: a first image reading unit configured to read an image from an object to be read by visible light; a second image reading unit configured to read a fluorescent image from the object to be read by invisible light; a first detection unit configured to detect at least part of a background image included in the object to be read from a first read image read by the first image reading unit; characterized by a registration unit configured to register feature information indicative of a feature of a detection background image detected by the first detection unit; and a second detection unit configured to process a second read image read by the second image reading unit on the basis of the feature information registered, to calculate a first binarization threshold for detecting the fluorescent bar code from the second read image on the basis of information obtained from a non-background image area different from the background image area in the second read image on the basis of the feature information, to detect a plurality of bar candidates constituting a fluorescent bar code from the second read image by applying binarization processing based on the first binarization threshold to the non-background image area in the second read image to detect part of the fluorescent bar code from the non-background image area included in the second read image, to determine whether or not it is necessary to detect bar candidates again on the basis of positions of one ends of the plurality of detected bar candidates, and, when it is determined that it is necessary to detect bar candidates again, to calculate a second binarization threshold for detecting the fluorescent bar code from the second read image on the basis of information obtained from the background image area in the second read image on the basis of the feature information registered, to detect a plurality of bar candidates from the second read image by applying binarization processing based on the second binarization threshold to the background image area in the second read image to detect part of the fluorescent bar code from the background image area included in the second read image. a first image reading unit configured to read an image from an object to be read by visible light; a second image reading unit configured to read a fluorescent image from the object to be read by invisible light; a first detection unit configured to detect at least part of a background image included in the object to be read from a first read image read by the first image reading unit; a registration unit configured to register feature information indicative of a feature of a detection background image detected by the first detection unit; and a second detection unit configured to process a second read image read by the second image reading unit on the basis of the feature information registered, to calculate a first binarization threshold for detecting the fluorescent bar code from the second read image on the basis of information obtained from a non-background image area different from the background image area in the second read image on the basis of the feature information, to detect a plurality of bar candidates constituting a fluorescent bar code from the second read image by applying binarization processing based on the first binarization threshold to the non-background image area in the second read image to detect part of the fluorescent bar code from the non-background image area included in the second read image, to determine whether or not it is necessary to detect bar candidates again on the basis of positions of one ends of the plurality of detected bar candidates, and, when it is determined that it is necessary to detect bar candidates again, to calculate a second binarization threshold for detecting the fluorescent bar code from the second read image on the basis of information obtained from the background image area in the second read image on the basis of the feature information registered, to detect a plurality of bar candidates from the second read image by applying binarization processing based on the second binarization threshold to the background image area in the second read image to detect part of the fluorescent bar code from the background image area included in the second read image.