A crossing point detector, comprising: a memory adapted to store a captured image obtained by imaging a checker pattern; and a processor (106; 1102; 2002, 2003, 2004) adapted to read out at least a partial image of the captured image from the memory as an image to process, and adapted to detect a crossing point of two boundary lines in the checker pattern depicted in the image to process, wherein each of the two boundary lines is a boundary line between a first region made up of multiple pixels having a first pixel value and a second region made up of multiple pixels having a second pixel value greater than the first pixel value in the image to process, the processor (106; 1102; 2002, 2003, 2004) is adapted to decide multiple parameters of a function model that treats two-dimensional image coordinates as variables, the parameters being parameters for optimizing an evaluation value based on a difference between respective pixel values represented by the function model and respective pixel values in the image to process, and is adapted to compute a position of a crossing point of two straight lines expressed by the decided multiple parameters, and thereby detects with subpixel precision the crossing point of the two boundary lines in the image to process, and the function model uses a curved surface that is at least first-order differentiable to express the first region and the second region in a two-dimensional coordinate system, and also pixel values at respective positions in the two-dimensional coordinate system at a boundary between the first region and the second region, characterized in that the function model is made up of a logistic function expanded in two dimensions. a memory adapted to store a captured image obtained by imaging a checker pattern; and a processor (106; 1102; 2002, 2003, 2004) adapted to read out at least a partial image of the captured image from the memory as an image to process, and adapted to detect a crossing point of two boundary lines in the checker pattern depicted in the image to process, wherein each of the two boundary lines is a boundary line between a first region made up of multiple pixels having a first pixel value and a second region made up of multiple pixels having a second pixel value greater than the first pixel value in the image to process, the processor (106; 1102; 2002, 2003, 2004) is adapted to decide multiple parameters of a function model that treats two-dimensional image coordinates as variables, the parameters being parameters for optimizing an evaluation value based on a difference between respective pixel values represented by the function model and respective pixel values in the image to process, and is adapted to compute a position of a crossing point of two straight lines expressed by the decided multiple parameters, and thereby detects with subpixel precision the crossing point of the two boundary lines in the image to process, and the function model uses a curved surface that is at least first-order differentiable to express the first region and the second region in a two-dimensional coordinate system, and also pixel values at respective positions in the two-dimensional coordinate system at a boundary between the first region and the second region, characterized in that the function model is made up of a logistic function expanded in two dimensions. <EOS>