Calculating the perimeter in binary image
Provided that these are representative images, you can apply a region growing operation, somewhere at the bottom of the image (or with the seed point being user defined) which will help in extracting just the contour you want to measure. It might look something like this:



Then, apply the high pass convolution matrix of:

$$\begin{bmatrix} 1 &amp; 1 &amp; 1 \\ 1&amp; -8 &amp; 1 \\ 1 &amp; 1 &amp; 1 \end{bmatrix}$$

Which will get rid of areas of constant "amplitude" and leave only the sharp transition of the perimeter. The image now might look like:



Now you can either just count the white pixels (there are 2658 in this one) or trace the white curve (again, a form of region growing) by starting from one of the points for which the above convolution kernel provided a high output (that is, one of the points that is exactly on the perimeter) recursively by looking for 8-connected components. 

Obviously, tracing the curve will provide a much more accurate estimate because there, you can take into account the $\sqrt{2}$ distances of pixels resting on a diagonal. If you then know your pixel size, you can also convert the estimate from pixel space to actual units of length.

Hope this helps.

(All processing done in GIMP, some white pixels outside of the perimeter where detected as well but can be easily taken out manually (even in ImageJ) or, if tracing the curve would not affect the measurement.)