1 | initial version |
The best idea can be use Hough Circle transformation to get the circle from the images. This function will retrieve to you the coordinates regarding the center of the circle.
The problem is that without any other things those value doesn't have much sense. In the graph they have a sense since there are the axis and the data are related to them. So a better way can be consider the Rectangle of the plot area and get the coordinate relative to it. Using the x and y scale you can get the correct value of every point. If you crop the rectangle (you can do it since you have the axis) inside the plot you'll have a rectangle of dimension X*Y. So X and Y it is the pixels dimension of the graph area that you've cropped. Do this automatically is possible if the images have the same format, otherwise is will be a little bit more tricky (not impossible, but tricky), in particular if the value on the axis changes.
Let's consider the first point (I'll call it P1, is the output of the Hough Circle transofrmation, you'll have P1.x as x coordinate and P1.y) in the plot. In the y axis you have 0-1000 while in x axis you have 0-10. Your graph area is then X*Y as we said. The point value will be the result of the following:
P1.x:X=x:10
that is, to be clear P1.x*10/X
. The same apply for the y value so: P1.y*1000/Y
. Applying to every points you'll get the data back.
2 | No.2 Revision |
The best idea can be use Hough Circle transformation to get the circle from the images. This function will retrieve to you the coordinates regarding the center of the circle.circles.
The problem is that without any other things those value doesn't have much sense. In the graph they have a sense since there are the axis and the data are related to them. So a better way can be consider the Rectangle of the plot area and get the coordinate relative to it. Using the x and y scale you can get the correct value of every point. If you crop the rectangle (you can do it since you have the axis) inside the plot you'll have a rectangle of dimension X*Y. So X and Y it is the pixels dimension of the graph area that you've cropped. Do this automatically is possible if the images have the same format, otherwise is will be a little bit more tricky (not impossible, but tricky), in particular if the value on the axis changes.
Let's consider the first point (I'll call it P1, is the output of the Hough Circle transofrmation, you'll have P1.x as x coordinate and P1.y) in the plot. In the y axis you have 0-1000 while in x axis you have 0-10. Your graph area is then X*Y as we said. The point value will be the result of the following:
P1.x:X=x:10
that is, to be clear P1.x*10/X
. The same apply for the y value so: P1.y*1000/Y
. Applying to every points you'll get the data back.