Search code examples
computer-visionobject-detectionbounding-boxfaster-rcnn

Length extraction From object detection


i'm doing a project and i need to find the Length of a detected Object.I'm using faster R-CNN for a basic Object detection.

The problem is i need to extract the Length of said detected Object, but i have no reference of length in the Image i detected. is it possible to do a length estimation? i read a paper about estimating the length of fish [1] but they use some kind of point of reference in the image as a reference of how large the fish is.

I also read that if we know the distance of the camera to said object its possible to estimate the length of an object by using pixel to mm conversion, but i don't think that this method will give us an accurate length estimation.

references:

[1] Using machine vision to estimate fish length from images using regional convolutional neural networks : https://besjournals.onlinelibrary.wiley.com/doi/epdf/10.1111/2041-210X.13282


Solution

  • Size of an object in an image is relative. It refers to the fact that the more distant an object, the smaller its image will be on the retina. Therefore, if there are two identical objects, the one that is farther away will be the one that has a smaller image on the retina. For example, if we assume that the two street lamps in this photograph below are of the same size, then the street lamps with a smaller image on the retina must be farther away from the viewer. As the image of the closest street lamp is the largest in the picture then we assume that it is the closest to the viewer. Note that the street lamps in the background does not look abnormal in any way. Despite creating a smaller image on the retina, the street lamps do not look oddly small. The normal size of the more distant street lamps is due to a mechanism called size constancy.

    So, you will need to have a reference object whose dimensions is known so that you can use it to find the dimensions of other objects.

    enter image description here