Yes, but it's not totally automatic.

Here is how I would do it.

First, import the image (above):

image = Import["C:\\Users\\arnoudb.WRI\\Downloads\\WqZ6swa.png"]

Next, with the image editing tools extract just the content area:

image2 = ImageTake[image, {18, 683}, {74, 1498}]

Then extract the "black" points:

pos = Position[ImageData[image2], {0., 0., 0.}];

Then get the data ranges (in the "image coordinate system"):

In[33]:= Max[pos[[All, 1]]]

Out[33]= 635

In[34]:= Min[pos[[All, 1]]]

Out[34]= 32

In[35]:= Max[pos[[All, 2]]]

Out[35]= 1425

In[36]:= Min[pos[[All, 2]]]

Out[36]= 1

Then rescale the data points and do a list plot (Edit: It looks like the original plot has some piecewise linear scaling or logarithmic scaling, which will make the correct transformation a bit harder):

ListPlot[{Rescale[#[[2]], {1, 1425}, {4000, 400}], Rescale[#[[1]], {635, 32}, {0, 100}]} & /@ pos]

Note how the data is "reversed" from the original image, since the original image has a very strange x-axis (it starts at 4000 and

then goes down to 400).