Web based tool to extract data from plots, images, and maps

June 10, 2014

Thanks to Numeric.js, WebPlotDigitizer can now perform cubic spline interpolations between detected data points (3.3 beta). With this new capability, we can now extract data at definite X-values from XY plots with dashed or dotted lines. This can also be used to interpolate between data points or even smoothen noise in the data.

A new algorithm called **"X Step w/ Interp."** has been added into the Version 3.3 beta alongside the existing X Step and Averaging Window algorithms for data extraction. The "Width" parameter controls the degree of smoothing for the algorithm. The images below show the effect of changing the Width parameter from 0.1 to 2

This new algorithm works a lot better than the current X-Step algorithm and so this might completely replace the existing algorithm in the app. Also, with this addition, I am considering wrapping up version 3.3 features and focus on updating the user manual and tutorial videos.

June 7, 2014

If you have any suggestions, ideas or concerns about WebPlotDigitizer or just wish to discuss data extraction from images, then feel free to join the new discussion forum: https://groups.google.com/d/forum/image-digitization

The version 3.x code base is showing promise and I am open to ideas. Want a desktop version? Want to use this in a different application? Need some new features? Just drop a line on the forum.

June 3, 2014

A simple blob detection algorithm has just been added to Version 3.3 (beta). This algorithm can be used to compute centroid location, area and one of the image moments of contiguous objects in images. I have found this algorithm to be very handy for many image processing problems and I think it makes a useful addition to this software. The current implementation is an improved version of the algorithm that I had in Version 2.x which only computed the centroid locations.

As an example, consider an image with multiple shapes as shown below. It is often necessary to determine the location of centers and areas of the various shapes in such an image. Often, we also want to distinguish between different shapes that might just be rotated (e.g. see alphabet 'A' in the image).

With this new blob detection algorithm, we can simply choose "Background" mode for color extraction and we get a table of centroids, areas and moments. The moment is the simplest rotation invariant Image Moment (I_{1}). By comparing the area and the moment for each detection, different shapes can be identified irrespective of their rotation.

This is, however, a very simple algorithm. This may not work very well with noisy images where the objects may not be easily distinguishable from the background. Also overlapping shapes will result in confusion. Some pre-processing in an image editing software such as GIMP might help in some cases.

Also note that the centroid positions are calibrated to the chosen axes. The area is in square pixels for all images other than maps. The moment is always calculated in square pixels (for now at least).